####################################
### USE WEV TO GET THE KEYS CODE ###
####################################

####################
### KEYBINDINGSS ###
####################

$terminal = kitty
$fileManager = thunar
$menu = wofi --show drun
$calc = qalculate-gtk

# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier

# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Q, exec, $terminal
bind = $mainMod, C, killactive,
bind = $mainMod, comma, exit,
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, R, exec, $menu
bind = $mainMod, W, exec, wlogout
bind = $mainMod, A, exec, qutebrowser
bind = $mainMod, F, fullscreen
bind = $mainMod, T, togglefloating
bind = , XF86Calculator, exec, $calc
bind = , XF86RFKill, exec, virt-manager
bind = , XF86Favorites, exec, discord
bind = $mainMod, L, exec, hyprlock

# Change Wallpaper
bind = $mainMod SHIFT, W, exec, pkill wallpaper.sh && /home/smayzy/.config/hypr/wallpaper.sh

# Screenshots
bind = $mainMod SHIFT, S, exec, grim -g "$(slurp -d)" - | wl-copy

#reload waybar
bind = $mainMod SHIFT, B, exec, killall waybar && waybar &

#hidden waybar
bind = $mainMod, X, exec, killall waybar || waybar & 

#brightness
bind = ,XF86MonBrightnessDown,exec,brightnessctl set 5%-
bind = ,XF86MonBrightnessUp,exec,brightnessctl set 5%+

#Mute by setting to 0%
bind = ,XF86AudioMute, exec, pactl set-sink-volume @DEFAULT_SINK@ 0%

#voluma
bind = ,XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5%
bind = ,XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5%

#mute micro
bind = ,XF86AudioMicMute, exec, pactl set-source-mute @DEFAULT_SOURCE@ toggle

# Move focus with mainMod + arrow keys
bind = $mainMod, h, movefocus, l
bind = $mainMod, l, movefocus, r
bind = $mainMod, k, movefocus, u
bind = $mainMod, j, movefocus, d

# Switch workspaces with mainMod + [0-9]
bind = $mainMod, ampersand, 	  workspace, 1
bind = $mainMod, eacute, 	  workspace, 2
bind = $mainMod, quotedbl, 	  workspace, 3
bind = $mainMod, apostrophe, 	  workspace, 4
bind = $mainMod, parenleft, 	  workspace, 5
bind = $mainMod, minus, 	  workspace, 6
bind = $mainMod, egrave, 	  workspace, 7
bind = $mainMod, underscore,	  workspace, 8
bind = $mainMod, ccedilla,	  workspace, 9
bind = $mainMod, agrave,   	  workspace, 10
bind = $mainMod, dead_circumflex, workspace, 11
bind = $mainMod, dollar,	  workspace, 12
bind = $mainMod, ugrave,	  workspace, 13
bind = $mainMod, asterisk,	  workspace, 14

# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, ampersand,	movetoworkspacesilent, 1
bind = $mainMod SHIFT, eacute, 		movetoworkspacesilent, 2
bind = $mainMod SHIFT, quotedbl, 	movetoworkspacesilent, 3
bind = $mainMod SHIFT, apostrophe,	movetoworkspacesilent, 4
bind = $mainMod SHIFT, parenleft, 	movetoworkspacesilent, 5
bind = $mainMod SHIFT, minus,		movetoworkspacesilent, 6
bind = $mainMod SHIFT, egrave, 		movetoworkspacesilent, 7
bind = $mainMod SHIFT, underscore,	movetoworkspacesilent, 8
bind = $mainMod SHIFT, ccedilla,	movetoworkspacesilent, 9
bind = $mainMod SHIFT, agrave, 		movetoworkspacesilent, 10
bind = $mainMod SHIFT, dead_circumflex, movetoworkspacesilent, 11
bind = $mainMod SHIFT, dollar, 		movetoworkspacesilent, 12
bind = $mainMod SHIFT, ugrave, 		movetoworkspacesilent, 13
bind = $mainMod SHIFT, asterisk, 	movetoworkspacesilent, 14

# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
