################################################################################
#                              HYPRLAND BINDINGS                               #
################################################################################
# Cómo funcionan los bindings:
#
#   bindd = MODIFICADORES, TECLA, Nombre, exec, comando
#
#   • MODIFICADORES = SUPER | SHIFT | CTRL | ALT (puedes combinarlos)
#   • TECLA = tecla física: RETURN, C, T, ESCAPE, etc.
#   • Nombre = etiqueta descriptiva (solo texto)
#   • exec = ejecuta un comando (lo más usado)
#
# Notas:
#   - Cada binding debe tener TODOS los parámetros.
#   - Si una línea queda incompleta, Hyprland marcará un error.
#   - Si duplicas una combinación de teclas, Hyprland usa la última.
################################################################################


# ------------------------------
# Variables (solo comodidad)
# ------------------------------
$terminal = uwsm-app -- xdg-terminal-exec
$browser = omarchy-launch-browser



################################################################################
#                               APPLICATION BINDS                              #
################################################################################

# Terminal con cwd actual (SUPER + ENTER)
bindd = SUPER, RETURN, Terminal, exec, $terminal --dir="$(omarchy-cmd-terminal-cwd)"

# Explorador de archivos (SUPER + E)
bindd = SUPER, E, File Manager, exec, uwsm-app -- nautilus --new-window

# Navegador normal (SUPER + B)
bindd = SUPER, B, Browser, exec, $browser

# Navegador privado (SUPER + SHIFT + B)
bindd = SUPER SHIFT, B, Browser Private, exec, $browser --private

# Spotify (SUPER + SHIFT + M)
bindd = SUPER SHIFT, M, Music, exec, omarchy-launch-or-focus spotify

# Editor (omarchy) (SUPER + SHIFT + N)
bindd = SUPER SHIFT, N, Editor, exec, omarchy-launch-editor

# Monitor del sistema tipo Windows (CTRL + SHIFT + ESCAPE)
bindd = CTRL SHIFT, ESCAPE, Activity Monitor, exec, $terminal -e btop

# Lazydocker (SUPER + SHIFT + D)
bindd = SUPER SHIFT, D, Docker, exec, $terminal -e lazydocker



################################################################################
#                             WEB APP BINDINGS                                 #
################################################################################

# ChatGPT (SUPER + SHIFT + A)
bindd = SUPER SHIFT, A, ChatGPT, exec, omarchy-launch-webapp "https://chatgpt.com"

# Grok (SUPER + SHIFT + G)
bindd = SUPER SHIFT, G, Grok, exec, omarchy-launch-webapp "https://grok.com"

# Google Calendar (SUPER + SHIFT + C)
bindd = SUPER SHIFT, C, Calendar, exec, omarchy-launch-webapp "https://calendar.google.com/"

# Gmail (SUPER + SHIFT + E)
bindd = SUPER SHIFT, E, Email, exec, omarchy-launch-webapp "https://mail.google.com/"

# YouTube (SUPER + SHIFT + Y)
bindd = SUPER SHIFT, Y, YouTube, exec, omarchy-launch-webapp "https://youtube.com/"

# WhatsApp Web (SUPER + SHIFT + W)
bindd = SUPER SHIFT, W, WhatsApp, exec, omarchy-launch-or-focus-webapp WhatsApp "https://web.whatsapp.com/"

# Google Photos (SUPER + SHIFT + P)
bindd = SUPER SHIFT, P, Google Photos, exec, omarchy-launch-or-focus-webapp "Google Photos" "https://photos.google.com/"

# Jules (SUPER + SHIFT + J)
bindd = SUPER SHIFT, J, Jules, exec, omarchy-launch-webapp "https://jules.google.com/"

# Outlook (SUPER + ALT + O)
bindd = SUPER ALT, O, Outlook, exec, omarchy-launch-webapp "https://outlook.com/"



################################################################################
#                                  APPS NATIVAS                                #
################################################################################

# Telegram Desktop (SUPER + SHIFT + T)
bindd = SUPER SHIFT, T, Telegram, exec, omarchy-launch-or-focus "^TelegramDesktop$" "/usr/bin/Telegram"

# VS Code (SUPER + SHIFT + V)
bindd = SUPER SHIFT, V, VSCode, exec, uwsm-app -- code

# Antigravity (SUPER + ALT + V)
bindd = SUPER ALT, V, Antigravity, exec, /home/marco/.antigravity/antigravity --password-store="gnome-libsecret"



################################################################################
#                            OPTIONAL OVERRIDES                                #
################################################################################
# Ejemplo: poner Omarchy Menu en SUPER + SPACE
# unbind = SUPER, SPACE
# bindd = SUPER, SPACE, Omarchy Menu, exec, omarchy-menu
################################################################################

# Suspend system
bind = SUPER SHIFT, S, exec, systemctl suspend
