Major rewrite (new install)

This commit is contained in:
ItsDrike 2025-09-02 22:38:05 +02:00
parent 4e89803237
commit e78b421565
Signed by: ItsDrike
GPG key ID: FA2745890B7048C0
158 changed files with 2542 additions and 5238 deletions

View file

@ -0,0 +1,7 @@
debug {
overlay = false
#disable_logs = false
enable_stdout_logs = true
}

View file

@ -1,4 +0,0 @@
exec-once = uwsm finalize
exec-once = sleep 3 && uwsm app vesktop
# vi: ft=hyprlang

View file

@ -1,11 +0,0 @@
gestures {
workspace_swipe = true
workspace_swipe_fingers = 3
workspace_swipe_distance = 300
workspace_swipe_invert = false
workspace_swipe_min_speed_to_force = 20
workspace_swipe_cancel_ratio = 0.650000
}
# vi: ft=hyprlang

View file

@ -3,11 +3,14 @@
# ################
# Should be configured per-profile
monitor = desc:Microstep MSI MAG 256F BC1H174600235, 1920x1080@120, 1920x0, 1 # left
monitor = desc:AOC 2260WG5 KBEH81A000795, 1920x1080@60, 1920x0, 1, # left
# Primary (laptop)
monitor = eDP-1, 1920x1200@60, 0x0, 1
# Externals
monitor = desc:Microstep MSI MAG 256F BC1H174600235, 1920x1080@120, 1920x0, 1 # right
monitor = desc:AOC 2260WG5 KBEH81A000795, 1920x1080@60, 1920x0, 1, # right
# Mirror the primary (laptop) monitor on externals
#monitor= , preferred, auto, 1, mirror, eDP-1
# Extend on externals
@ -34,3 +37,4 @@ input {
}
# vi: ft=hyprlang

View file

@ -12,34 +12,65 @@ $XF86Favorites = 164
bind = SUPER, W, killactive,
bind = SUPER, F, togglefloating,
bind = SUPER, Space, fullscreen, 0 # regular fullscreen
bind = SUPER_SHIFT, Space, fullscreen, 1 # maximize without client fullscreen
bind = SUPER_CTRL, Space, fullscreenstate, 2, 0 # fullscreen without client knowing
bind = SUPER_CTRL_SHIFT, Space, fullscreenstate, 1, 2 # maximize with client being full-screen
bind = CTRL_SHIFT, Space, exec, toggle-fake-fullscreen # fake fullscreen + custom border
bind = SUPER_SHIFT, S, layoutmsg, togglesplit
# ################
# ### PROGRAMS ###
# ################
bind = SUPER, R, exec, uwsm app -- $(uwsm app -- wofi --show drun --define=drun-print_desktop_file=true)
bind = SUPER_SHIFT, V, exec, uwsm app -- clipman pick -t wofi
bind = SUPER, Return, exec, uwsm app -- kitty
bind = SUPER, X, exec, uwsm app -- pcmanfm-qt
bind = SUPER, B, exec, uwsm app -- firefox
bind = SUPER, C, exec, uwsm app -- qalculate-gtk
bind = , XF86Calculator, exec, uwsm app -- qalculate-gtk
bind = SUPER SHIFT, S, layoutmsg, togglesplit
bind = SUPER, P, pseudo
# #####################
# ### DE/WM CONTROL ###
# #####################
bind = SUPER_SHIFT, Q, exec, uwsm app -- menuquit
bind = SUPER_CTRL, L, exec, loginctl lock-session
bind = SUPER_SHIFT, L, exec, uwsm app -- wlogout -p layer-shell
bind = SUPER_SHIFT, T, exec, toggle-idle
bind = SUPER CTRL, L, exec, loginctl lock-session
bind = SUPER SHIFT, L, exec, uwsm app -- wlogout -p layer-shell
bind = SUPER SHIFT, T, exec, toggle-idle
#
# ################
# ### PROGRAMS ###
# ################
bind = SUPER, R, exec, uwsm app -- walker
bind = SUPER, Return, exec, uwsm app -- kitty
bind = SUPER, X, exec, uwsm app -- pcmanfm-qt
bind = SUPER, B, exec, uwsm app -- firefox
bind = SUPER, C, exec, uwsm app -- qalculate-gtk
bind = , XF86Calculator, exec, uwsm app -- qalculate-gtk
bind = SUPER SHIFT, V, exec, uwsm app -- cliphist list | walker -d | cliphist decode | wl-copy
# ###################
# ### FULL-SCREEN ###
# ###################
bind = SUPER, Space, fullscreen, 0 # regular fullscreen
bind = SUPER SHIFT, Space, fullscreen, 1 # maximize without client fullscreen
bind = SUPER CTRL, Space, fullscreenstate, 2, 0 # fullscreen without client knowing
bind = SUPER CTRL SHIFT, Space, fullscreenstate, 1, 2 # maximize with client being full-screen
bind = CTRL SHIFT, Space, exec, toggle-fake-fullscreen # fake fullscreen + custom border
# ############################
# ### AUDIO/VOLUME CONTROL ###
# ############################
bindel = SUPER, Down, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05-
bindel = SUPER, Up, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05+
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05-
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05+
bindl = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bindl = , XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
bindl = , XF86AudioNext, exec, playerctl next
bindl = , XF86AudioPause, exec, playerctl play-pause
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous
# ##########################
# ### BRIGHTNESS CONTROL ###
# ##########################
bindel = SUPER, Right, exec, brightnessctl -n2 set 5%+
bindel = SUPER, Left, exec, brightnessctl -n2 set 5%-
bindel = ,XF86MonBrightnessDown, exec, brightnessctl -n2 set 5%-
bindel = ,XF86MonBrightnessUp, exec, brightnessctl -n2 set 5%+
# ###################
# ### SCREENSHOTS ###
@ -50,58 +81,28 @@ $SCREENSHOT_FORMAT = "${XDG_SCREENSHOTS_DIR:-$HOME/Media/Pictures/Screenshots}/S
$SCREENSHOT_DELAY = 2000
$PRINTSCR_KEY = Print #Menu # Print
#bind = ALT, $PRINTSCR_KEY, exec, wl-copy --type image/png "$(hyprpicker)" && notify-send 'Picked color' "$(wl-paste) (saved to clipboard)"
bind = , $PRINTSCR_KEY, exec, hyprland-screenshot --notify --copy --target area
#bindl = , $PRINTSCR_KEY, exec, hyprland-screenshot --notify --copy --target all # lockscreen screenshot (only enable when needed)
#bindl = , $PRINTSCR_KEY, exec, hyprland-screenshot --notify --copy --target all # lockscreen screenshot (only enable when needed, dangerous)
bind = SUPER, $PRINTSCR_KEY, exec, hyprland-screenshot --notify --copy --target area --edit
bind = SHIFT, $PRINTSCR_KEY, exec, hyprland-screenshot --notify --save $SCREENSHOT_FORMAT --target area
bind = CTRL, $PRINTSCR_KEY, exec, hyprland-screenshot --notify --copy --target area --delay $SCREENSHOT_DELAY
bind = SUPER_SHIFT, $PRINTSCR_KEY, exec, hyprland-screenshot --notify --save $SCREENSHOT_FORMAT --target area --edit
bind = SUPER_CTRL, $PRINTSCR_KEY, exec, hyprland-screenshot --notify --copy --target area --delay $SCREENSHOT_DELAY --edit
bind = SUPER_SHIFT_CTRL, $PRINTSCR_KEY, exec, hyprland-screenshot --notify --save $SCREENSHOT_FORMAT --target area --delay $SCREENSHOT_DELAY --edit
bind = SUPER_ALT, $PRINTSCR_KEY, exec, ocr && notify-send "OCR" "Text copied to clipboard"
bind = SUPER SHIFT, $PRINTSCR_KEY, exec, hyprland-screenshot --notify --save $SCREENSHOT_FORMAT --target area --edit
bind = SUPER CTRL, $PRINTSCR_KEY, exec, hyprland-screenshot --notify --copy --target area --delay $SCREENSHOT_DELAY --edit
bind = SUPER SHIFT CTRL, $PRINTSCR_KEY, exec, hyprland-screenshot --notify --save $SCREENSHOT_FORMAT --target area --delay $SCREENSHOT_DELAY --edit
bind = SUPER ALT, $PRINTSCR_KEY, exec, ocr && notify-send "OCR" "Text copied to clipboard"
bind = ALT, $PRINTSCR_KEY, exec, wl-copy --type image/png "$(hyprpicker)" && notify-send 'Picked color' "$(wl-paste) (saved to clipboard)"
# XF86Favorites key for recording
# (don't question me, I had it free)
bind = , 164, exec, uwsm app -- quick-record --notify toggle
bind = SUPER, 164, exec, uwsm -- app quick-record toggle
# #####################
# ### NOTIFICATIONS ###
# #####################
bind = CTRL, grave, exec, swaync-client --close-latest
bind = CTRL_SHIFT, grave, exec, swaync-client --close-all
bind = CTRL_ALT, grave, exec, swaync-client --hide-latest
bind = CTRL, period, exec, swaync-client --toggle-panel
bind = SUPER_SHIFT, D, exec, toggle-notifications
# ############################
# ### AUDIO/VOLUME CONTROL ###
# ############################
binde = SUPER, Down, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05-
binde = SUPER, Up, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05+
binde = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05-
binde = , XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 0.05+
bind = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bind = , XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
# ##########################
# ### BRIGHTNESS CONTROL ###
# ##########################
binde = SUPER, Right, exec, brightness -i 5% -n
binde = SUPER, Left, exec, brightness -d 5% -n
binde = , XF86MonBrightnessUp, exec, brightness -i 5% -n
binde = , XF86MonBrightnessDown, exec, brightness -d 5% -n
# #####################
# ### WINDOW GROUPS ###
# #####################
bind = SUPER, G, togglegroup,
bind = SUPER_SHIFT, G, lockactivegroup, toggle
bind = SUPER SHIFT, G, lockactivegroup, toggle
bind = ALT, tab, changegroupactive, f
bind = ALT, grave, changegroupactive, b
@ -122,33 +123,14 @@ bind = SUPER, k, movefocus, u
bind = SUPER, j, movefocus, d
# #######################################
# ### MOVE ACTIVE WINDOW IN DIRECTION ###
# ### MOVE FLOATING OR ACTIVE WINDOWS ###
# #######################################
bind = SUPER_ALT, h, movewindow, l
bind = SUPER_ALT, l, movewindow, r
bind = SUPER_ALT, k, movewindow, u
bind = SUPER_ALT, j, movewindow, d
# #######################################
# ### MOVE FLOATING WINDOWS ###
# #######################################
$myMoveSize = 100
bind = SUPER_ALT, left, exec, hyprland-move-window $myMoveSiez l
bind = SUPER_ALT, right, exec, hyprland-move-window $myMoveSize r
bind = SUPER_ALT, up, exec, hyprland-move-window $myMoveSize u
bind = SUPER_ALT, down, exec, hyprland-move-window $myMoveSize d
# ################################################################
# ### OVERRIDE SPLIT DIRECTION FOR NEXT WINDOW (MANUAL TILING) ###
# ################################################################
bind = SUPER_ALT, left, layoutmsg, preselect l
bind = SUPER_ALT, right, layoutmsg, preselect r
bind = SUPER_ALT, up, layoutmsg, preselect u
bind = SUPER_ALT, down, layoutmsg, preselect d
$floatMoveSize = 100
bind = SUPER ALT, h, exec, hyprland-move-window $floatMoveSize l
bind = SUPER ALT, l, exec, hyprland-move-window $floatMoveSize r
bind = SUPER ALT, k, exec, hyprland-move-window $floatMoveSize u
bind = SUPER ALT, j, exec, hyprland-move-window $floatMoveSize d
# ######################################################
# ### SWITCH WORKSPACE (SWAPPING TO CURRENT MONITOR) ###
@ -168,15 +150,15 @@ bind = SUPER, 9, focusworkspaceoncurrentmonitor, 9
# ### MOVE WINDOW TO WORKSPACE ###
# ################################
bind = SUPER_SHIFT, 1, movetoworkspacesilent, 1
bind = SUPER_SHIFT, 2, movetoworkspacesilent, 2
bind = SUPER_SHIFT, 3, movetoworkspacesilent, 3
bind = SUPER_SHIFT, 4, movetoworkspacesilent, 4
bind = SUPER_SHIFT, 5, movetoworkspacesilent, 5
bind = SUPER_SHIFT, 6, movetoworkspacesilent, 6
bind = SUPER_SHIFT, 7, movetoworkspacesilent, 7
bind = SUPER_SHIFT, 8, movetoworkspacesilent, 8
bind = SUPER_SHIFT, 9, movetoworkspacesilent, 9
bind = SUPER SHIFT, 1, movetoworkspacesilent, 1
bind = SUPER SHIFT, 2, movetoworkspacesilent, 2
bind = SUPER SHIFT, 3, movetoworkspacesilent, 3
bind = SUPER SHIFT, 4, movetoworkspacesilent, 4
bind = SUPER SHIFT, 5, movetoworkspacesilent, 5
bind = SUPER SHIFT, 6, movetoworkspacesilent, 6
bind = SUPER SHIFT, 7, movetoworkspacesilent, 7
bind = SUPER SHIFT, 8, movetoworkspacesilent, 8
bind = SUPER SHIFT, 9, movetoworkspacesilent, 9
# ###########################################
# ### MOVE WINDOW TO WORKSPACE + FOCUS IT ###
@ -196,18 +178,15 @@ bind = ALT, 9, movetoworkspace, 9
# ### CYCLE WORKSPACES (RELATIVE MOVEMENT) ###
# ############################################
bind = SUPER, mouse_down, workspace, +1
bind = SUPER, mouse_up, workspace, -1
bind = SUPER, bracketleft, workspace, -1
bind = SUPER, bracketright, workspace, +1
# ##########################################
# ### CYCLE MONITORS (RELATIVE MOVEMENT) ###
# ##########################################
bind = SUPER_SHIFT, bracketleft, focusmonitor, -1
bind = SUPER_SHIFT, bracketright, focusmonitor, +1
bind = SUPER SHIFT, bracketleft, focusmonitor, -1
bind = SUPER SHIFT, bracketright, focusmonitor, +1
# #######################
# ### WINDOW RESIZING ###
@ -222,54 +201,11 @@ binde = ALT, right, resizeactive, 10 0
binde = ALT, left, resizeactive, -10 0
binde = ALT, up, resizeactive, 0 -10
binde = ALT, down, resizeactive, 0 10
binde = ALT, H, resizeactive, -10 0
binde = ALT, K, resizeactive, 0 -10
binde = ALT, J, resizeactive, 0 10
binde = ALT, L, resizeactive, 10 0
## Precise keyboard resizing (submap)
bind = SUPER, slash, submap, resize
submap = resize
binde = , right, resizeactive, 10 0
binde = , left, resizeactive, -10 0
binde = , up, resizeactive, 0 -10
binde = , down, resizeactive, 0 10
binde = SUPER, right, resizeactive, 30 0
binde = SUPER, left, resizeactive, -30 0
binde = SUPER, up, resizeactive, 0 -30
binde = SUPER, down, resizeactive, 0 30
binde = SHIFT, right, resizeactive, 1 0
binde = SHIFT, left, resizeactive, -1 0
binde = SHIFT, up, resizeactive, 0 -1
binde = SHIFT, down, resizeactive, 0 1
binde = , H, resizeactive, -10 0
binde = , K, resizeactive, 0 -10
binde = , J, resizeactive, 0 10
binde = , L, resizeactive, 10 0
binde = , right, resizeactive, 10 0
binde = , left, resizeactive, -10 0
binde = , up, resizeactive, 0 -10
binde = , down, resizeactive, 0 10
binde = SUPER, H, resizeactive, -30 0
binde = SUPER, K, resizeactive, 0 -30
binde = SUPER, J, resizeactive, 0 30
binde = SUPER, L, resizeactive, 30 0
binde = SHIFT, H, resizeactive, -1 0
binde = SHIFT, K, resizeactive, 0 -1
binde = SHIFT, J, resizeactive, 0 1
binde = SHIFT, L, resizeactive, 1 0
bind = , escape, submap, reset
bind = , return, submap, reset
bind = SUPER, slash, submap, reset
submap = reset
binde = ALT, h, resizeactive, -10 0
binde = ALT, k, resizeactive, 0 -10
binde = ALT, j, resizeactive, 0 10
binde = ALT, l, resizeactive, 10 0
# ########################################################
# ### GLOBAL KEYBINDS (PASSING KEYS TO OTHER PROGRAMS) ###
@ -288,4 +224,3 @@ submap = isolate
bind = SUPER, End, exec, hyprctl dispatch submap reset && notify-send "Keybind isolation" "Keybind isolation off"
submap = reset
# vi: ft=hyprlang

View file

@ -1,23 +0,0 @@
general {
layout = dwindle
}
dwindle {
# Don't change the split (side/top) regardless
# of what happens to the container
preserve_split = true
# Scale down special workspaces (bigger borders)
special_scale_factor = 0.9
}
group {
# Add new windows in the group after the current window
# rather than after the group tail window
insert_after_current = true
# Focus the window that was just moved out of the group
focus_removed_window = true
}
# vi: ft=hyprlang

View file

@ -1,14 +1,12 @@
misc {
# Disable redundant renders (covered by wallpaper)
disable_hyprland_logo = true
disable_splash_rendering = true
# Follow requests from windows to be focused
focus_on_activate = true
# follow requests from windows to be focused
focus_on_activate = true
# Enable DPMS on these actions
mouse_move_enables_dpms = true
key_press_enables_dpms = true
# Enable DPMS on these actions
mouse_move_enables_dpms = true
key_press_enables_dpms = true
# Disable the primary clipboard (everyone uses Ctrl+C: unnamedplus,
# primary is not needed and can get annoying sometimes)
middle_click_paste = false
}
# vi: ft=hyprlang

View file

@ -0,0 +1,11 @@
ecosystem {
enforce_permissions = true
}
permission = /usr/(lib|lib64)/xdg-portal-hyprland, screencopy, allow
permission = /usr/bin/grim, screencopy, allow
permission = /usr/bin/wf-recorder, screencopy, allow
permission = /usr/bin/hyprlock, screencopy, allow
# permission = /usr/(bin)/hyprpm, plugin, allow

View file

@ -1,28 +0,0 @@
# #######################
# ### LOADING PLUGINS ###
# #######################
exec-once=hyprpm reload -n
#exec-once=hyprctl plugin load $HOME/.local/share/hyprload/plugins/bin/dwindle-autogroup.so
# ################
# ### HYPRBARS ###
# ################
plugin {
hyprbars {
bar_height = 20
bar_color = rgb(505152)
col.text = rgb(ff0000)
bar_text_size = 10
# example buttons (R -> L)
# hyprbars-button = color, size, on-click
hyprbars-button = rgb(ff4040), 10, 󰖭, hyprctl dispatch killactive
hyprbars-button = rgb(eeee11), 10, , hyprctl dispatch fullscreen 1
}
}
# vi: ft=hyprlang

View file

@ -1,10 +1,34 @@
# ##############
# ### LAYOUT ###
# ##############
general {
layout = dwindle
}
dwindle {
# Allow pseudo-tiling (tiled window that retains it's floating size)
pseudotile = true
# Don't change the split regardless of what happens to the container
preserve_split = true
# Scale down special workspaces (bigger borders)
special_scale_factor = 0.95
}
group {
# Don't auto-insert newly created windows into a group
auto_group = false
}
# ###################
# ### WINDOW GAPS ###
# ###################
general {
gaps_in = 5
gaps_out = 8
gaps_out = 10
}
# ###############
@ -12,30 +36,30 @@ general {
# ###############
decoration {
rounding = 8
rounding = 8
rounding_power = 2
}
general {
border_size = 2
# Regular windows
col.active_border = rgba(FFA500FF) # orange
#col.active_border = rgba(FFFFFFEE) # white
col.inactive_border = rgba(666666AA) # transparent gray
col.active_border = rgba(ffa500ff) # orange
col.inactive_border = rgba(666666aa) # transparent gray
# Windows with nogroup property
col.nogroup_border_active = rgba(FF00FFFF) # purple
col.nogroup_border = rgba(FF00FFAA) # transparent purple
col.nogroup_border_active = rgba(ff00ffff) # purple
col.nogroup_border = rgba(ff00ffaa) # transparent purple
}
group {
# Groupped windows
col.border_active = rgba(00A500FF) # green
col.border_inactive = rgba(5AA500FF) # transparent green
# Groupped windows
col.border_active = rgba(00a500ff) # green
col.border_inactive = rgba(5aa500ff) # transparent green
# Locked groupped windows
col.border_locked_active = rgba(A0A500FF) # yellow
col.border_locked_inactive = rgba(A0A500AA) # transparent yellow
# Locked groupped windows
col.border_locked_active = rgba(a0a500ff) # yellow
col.border_locked_inactive = rgba(a0a500aa) # transparent yellow
}
# #################
@ -46,7 +70,7 @@ group {
groupbar {
# Title box above window
render_titles = false # disable, looks kinda bad
font_family = Monaspace Krypton
#font_family = Monaspace Krypton
font_size = 11
text_color = rgba(FFFFFFFF) # white
@ -70,14 +94,15 @@ group {
# ###################
decoration {
shadow {
enabled = true # enable drop shadow
range = 20
render_power = 2
color = rgba(0F0F0FE6)
#color = rgba(FFA500FF)
color_inactive = rgba(0F0F0F99)
}
shadow {
# I don't really need drop shadow, it just consumes more battery
# and I honestly don't see a huge difference with it on.
enabled = false
range = 4
render_power = 3
color = rgba(0f0f0fe6)
color_inactive = rgba(0f0f0f99)
}
}
# ###################
@ -87,44 +112,49 @@ decoration {
decoration {
blur {
enabled = true
size = 8
size = 6
passes = 1
}
}
# ########################
# ### INACTIVE WINDOWS ###
# ########################
decoration {
#dim_inactive = true
dim_strength = 0.05
dim_special = 0.2
# inactive_opacity = 0.9
}
# ##################
# ### ANIMATIONS ###
# ##################
animations {
enabled = true
first_launch_animation = true # fade in on first launch
enabled = true
animation = windows, 1, 3, default, popin 50%
animation = border, 1, 4, default
animation = fade, 1, 4, default
animation = workspaces, 1, 3, default
animation = specialWorkspace, 1, 2, default, slidefadevert
}
bezier = easeOutQuint,0.23,1,0.32,1
bezier = easeInOutCubic,0.65,0.05,0.36,1
bezier = linear,0,0,1,1
bezier = almostLinear,0.5,0.5,0.75,1.0
bezier = quick,0.15,0,0.1,1
misc {
animate_manual_resizes = true
animation = global, 1, 10, default
animation = border, 1, 5.39, easeOutQuint
animation = windows, 1, 4.79, easeOutQuint
animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
animation = windowsOut, 1, 1.49, linear, popin 87%
animation = fadeIn, 1, 1.73, almostLinear
animation = fadeOut, 1, 1.46, almostLinear
animation = fade, 1, 3.03, quick
animation = layers, 1, 3.81, easeOutQuint
animation = layersIn, 1, 4, easeOutQuint, fade
animation = layersOut, 1, 1.5, linear, fade
animation = fadeLayersIn, 1, 1.79, almostLinear
animation = fadeLayersOut, 1, 1.39, almostLinear
animation = workspaces, 1, 1.94, almostLinear, fade
animation = workspacesIn, 1, 1.21, almostLinear, fade
animation = workspacesOut, 1, 1.94, almostLinear, fade
animation = specialWorkspace, 1, 2, default, slidefadevert
}
# #################
# ### WALLPAPER ###
# #################
# vi: ft=hyprlang
misc {
disable_hyprland_logo = true
disable_splash_rendering = true
force_default_wallpaper = -1
}

View file

@ -10,53 +10,20 @@ windowrulev2 = workspace 5, class:^(Spotify)$
windowrulev2 = workspace 6, class:^(Stremio)$
windowrulev2 = workspace 6, class:^(com.stremio.stremio)$
# #######################
# ### IDLE INHIBITION ###
# #######################
# #############################################
# ### CORRECT SIZE / AUTO TILE / AUTO FLOAT ###
# ############################################
windowrulev2 = idleinhibit focus, class:^(Stremio)$
windowrulev2 = idleinhibit focus, class:^(com.stremio.stremio)$
windowrulev2 = idleinhibit focus, class:^(mpv)$
windowrulev2 = idleinhibit focus, class:^(firefox)$,title:^(.+ - YouTube — Mozilla Firefox)$
windowrulev2 = idleinhibit focus, class:^(firefox)$,title:^(Picture-in-Picture)$
# ################################
# ### CORRECT SIZE / AUTO TILE ###
# ################################
windowrulev2 = size 800 550, class:^(qalculate-gtk)$
windowrulev2 = tile, class:^(Spotify)$
# ##################
# ### AUTO FLOAT ###
# ##################
windowrulev2 = float, class:^(Lxappearance)$
windowrulev2 = float, class:^(Rofi)$
windowrulev2 = float, class:^(feh)$
windowrulev2 = float, class:^(pavucontrol-qt)$
windowrulev2 = float, class:^(pavucontrol)$
windowrulev2 = float, class:^(file-roller)$
# Float and properly size qualculate
windowrulev2 = float, class:^(qalculate-gtk)$
windowrulev2 = float, class:^(com.github.wwmm.easyeffects)
windowrulev2 = float, class:^(opensnitch_ui)$
windowrulev2 = float, class:^(Brave-browser)$,title:^(_crx_.+)$
windowrulev2 = size 800 550, class:^(qalculate-gtk)$
## Float hyprland-share-picker & some extra actions
# Float hyprland-share-picker & some extra actions
windowrulev2 = float, class:^(hyprland-share-picker)$
windowrulev2 = center, class:^(hyprland-share-picker)$
windowrulev2 = animation slide, class:^(hyprland-share-picker)$
## Float firefox windows (like bookmark menus, or some extension windows)
windowrulev2 = float, class:^(firefox)$,title:^(Revert Bookmarks)$
windowrulev2 = float, class:^(firefox)$,title:^(Library)$
windowrulev2 = float, class:^(firefox)$,title:^(Extension: \(uBlock Origin\))
windowrulev2 = float, class:^(firefox)$,title:^(Extension: \(Bitwarden Password Manager\) - Bitwarden — Mozilla Firefox)$
windowrulev2 = float, class:^(firefox)$,title:^(Firefox — Sharing Indicator)$
windowrulev2 = float, class:^(firefox)$,title:^(Opening .+)$
windowrulev2 = float, class:^(firefox)$,title:^$
## Float some pcmanfm windows
# Float some pcmanfm windows
windowrulev2 = float, class:^(pcmanfm-qt)$,title:^(Mount)$
windowrulev2 = float, class:^(pcmanfm-qt)$,title:^(Preferences)$
windowrulev2 = float, class:^(pcmanfm-qt)$,title:^(Move files)$
@ -65,45 +32,21 @@ windowrulev2 = float, class:^(pcmanfm-qt)$,title:^(Copy Files)$
windowrulev2 = float, class:^(pcmanfm-qt)$,title:^(Confirm to replace files)$
windowrulev2 = float, class:^(pcmanfm-qt|)$,title:^(Choose an Application)$
## Float some qimgv windows
windowrulev2 = float, class:^(qimgv)$,title:^(Add shortcut)$
windowrulev2 = float, class:^(qimgv)$,title:^(Preferences — qimgv)$
## Float some windows from other apps
windowrulev2 = float, class:^(Spotify)$,title:^(Ozone X11)$
windowrulev2 = float, class:^(python3)$,title:^(Tor Browser Launcher Settings)$
windowrulev2 = float, class:^(python3)$,title:^(Tor Browser)$
## General float rules
windowrulev2 = float, class:^(file_progress)$
windowrulev2 = float, class:^(confirm)$
windowrulev2 = float, class:^(dialog)$
windowrulev2 = float, class:^(download)$
windowrulev2 = float, class:^(notification)$
windowrulev2 = float, class:^(error)$
windowrulev2 = float, class:^(splash)$
windowrulev2 = float, class:^(confirmreset)$
windowrulev2 = float, class:^(floating)$
## Float all windows that don't have a title nor a class
# Float all windows that don't have a title nor a class
windowrulev2 = float, class:^$,title:^$
# #############
# ### FIXES ###
# #############
# Other apps
windowrulev2 = float, class:^(file-roller)$
windowrulev2 = float, class:^(opensnitch_ui)$
windowrulev2 = float, class:^(Brave-browser)$,title:^(_crx_.+)$
windowrulev2 = float, class:^(qimgv)$,title:^(Add shortcut)$
# jetbrains
# ############
# ### MISC ###
# ############
windowrulev2 = center, class:^(jetbrains-.*)$,title:^(splash)$,floating:1
windowrulev2 = nofocus, class:^(jetbrains-.*)$,title:^(splash)$,floating:1
windowrulev2 = noborder, class:^(jetbrains-.*)$,title:^(splash)$,floating:1
windowrulev2 = center, class:^(jetbrains-.*)$,title:^( )$,floating:1
windowrulev2 = stayfocused, class:^(jetbrains-.*)$,title:^( )$,floating:1
windowrulev2 = noborder, class:^(jetbrains-.*)$,title:^( )$,floating:1
windowrulev2 = nofocus, class:^(jetbrains-.*)$,title:^(win.*)$,floating:1
windowrulev2 = noinitialfocus, class:^(jetbrains-.*)$,title:^(win.*)$
# Ignore maximize requests from apps.
windowrule = suppressevent maximize, class:.*
# Don't add borders to grim selections when taking screenshots
layerrule = noanim, ^(selection)$
# vi: ft=hyprlang
# Fix some dragging issues with XWayland
windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0