From 4015eea740904baca74a7e6c772e866128ac2a2f Mon Sep 17 00:00:00 2001 From: Don Williams Date: Wed, 19 Nov 2025 17:39:16 -0500 Subject: Added 1st pass at WindowsRules v3 On branch development Your branch is up to date with 'origin/development'. Changes to be committed: new file: config/hypr/UserConfigs/WindowRules.conf-v3.conf --- config/hypr/UserConfigs/WindowRules.conf-v3.conf | 692 +++++++++++++++++++++++ 1 file changed, 692 insertions(+) create mode 100644 config/hypr/UserConfigs/WindowRules.conf-v3.conf diff --git a/config/hypr/UserConfigs/WindowRules.conf-v3.conf b/config/hypr/UserConfigs/WindowRules.conf-v3.conf new file mode 100644 index 00000000..a35504f1 --- /dev/null +++ b/config/hypr/UserConfigs/WindowRules.conf-v3.conf @@ -0,0 +1,692 @@ +# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ # +# For window rules and layerrules +# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more + +# NOTES: This is only for Hyprland > 0.48 + +# note for ja: This should NOT be implemented on Debian and Ubuntu + +# windowrule - tags - add apps under appropriate tag to use the same settings +# browser tags + +# notif tags + +# KooL settings tag + +# terminal tags + +# email tags + +# project tags + +# screenshare tags + +# IM tags + +# game tags + +# gamestore tags + +# file-manager tags + +# wallpaper tags + +# multimedia tags + +# multimedia-video tags + +# settings tags + +# viewer tags + +# Some special override rules + +# POSITION +# windowrule = center,floating:1 # warning, it cause even the menu to float and center. +#windowrule = move 72% 7%,title:^(Firefox)$ + +# windowrule to avoid idle for fullscreen apps +#windowrule = idleinhibit fullscreen, class:^(*)$ +#windowrule = idleinhibit fullscreen, title:^(*)$ + +# windowrule move to workspace +#windowrule = workspace 1, tag:email* +#windowrule = workspace 2, tag:browser* +#windowrule = workspace 3, class:^([Tt]hunar)$ +#windowrule = workspace 3, tag:projects* +#windowrule = workspace 5, tag:gamestore* +#windowrule = workspace 7, tag:im* +#windowrule = workspace 8, tag:games* + +# windowrule move to workspace (silent) +#windowrule = workspace 4 silent, tag:screenshare* +#windowrule = workspace 6 silent, class:^(virt-manager)$ +#windowrule = workspace 6 silent, class:^(.virt-manager-wrapped)$ +#windowrule = workspace 9 silent, tag:multimedia* +# +# FLOAT +#windowrule = float, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$ +#windowrule = float, title:^(Firefox)$ + +# windowrule - ######### float popups and dialogue ####### + + + + +# END of float popups and dialogue ####### + +# OPACITY + +# SIZE + +#windowrule = size 25% 25%, title:^(Picture-in-Picture)$ +#windowrule = size 25% 25%, title:^(Firefox)$ + +# PINNING +#windowrule = pin,title:^(Firefox)$ + +# windowrule - extras + +# BLUR & FULLSCREEN + + +#This not gonna take the focus to the window that appears when hovering over some of the parts of the IntelliJ Products + +#This will gonna make the VS Code bluer like other apps + +#windowrule = bordercolor rgb(EE4B55) rgb(880808), fullscreen:1 +#windowrule = bordercolor rgb(282737) rgb(1E1D2D), floating:1 +#windowrule = opacity 0.8 0.8, pinned:1 + +# LAYER RULES + +#layerrule = ignorealpha 0.5, tag:notif* + +#layerrule = ignorezero, class:^([Rr]ofi)$ +#layerrule = blur, class:^([Rr]ofi)$ +#layerrule = unset,class:^([Rr]ofi)$ +#layerrule = ignorezero, + +#layerrule = ignorezero, overview +#layerrule = blur, overview + +# --- Auto-generated window rules --- +windowrule { + name = windowrule-1 + match:class = ^([Ff]irefox|org.mozilla.firefox|[Ff]irefox-esr|[Ff]irefox-bin)$ + tag = +browser +} + +windowrule { + name = windowrule-2 + match:class = ^([Gg]oogle-chrome(-beta|-dev|-unstable)?)$ + tag = +browser +} + +windowrule { + name = windowrule-3 + match:class = ^(chrome-.+-Default)$ # Chrome PWAs + tag = +browser +} + +windowrule { + name = windowrule-4 + match:class = ^([Cc]hromium)$ + tag = +browser +} + +windowrule { + name = windowrule-5 + match:class = ^([Mm]icrosoft-edge(-stable|-beta|-dev|-unstable))$ + tag = +browser +} + +windowrule { + name = windowrule-6 + match:class = ^(Brave-browser(-beta|-dev|-unstable)?)$ + tag = +browser +} + +windowrule { + name = windowrule-7 + match:class = ^([Tt]horium-browser|[Cc]achy-browser)$ + tag = +browser +} + +windowrule { + name = windowrule-8 + match:class = ^(zen-alpha|zen)$ + tag = +browser +} + +windowrule { + name = windowrule-9 + match:class = ^(swaync-control-center|swaync-notification-window|swaync-client|class)$ + tag = +notif +} + +windowrule { + name = windowrule-10 + match:title = ^(KooL Quick Cheat Sheet)$ + tag = +KooL_Cheat +} + +windowrule { + name = windowrule-11 + match:title = ^(KooL Hyprland Settings)$ + tag = +KooL_Settings +} + +windowrule { + name = windowrule-12 + match:class = ^(nwg-displays|nwg-look)$ + tag = +KooL-Settings +} + +windowrule { + name = windowrule-13 + match:class = ^(Alacritty|kitty|kitty-dropterm)$ + tag = +terminal +} + +windowrule { + name = windowrule-14 + match:class = ^([Tt]hunderbird|org.gnome.Evolution)$ + tag = +email +} + +windowrule { + name = windowrule-15 + match:class = ^(eu.betterbird.Betterbird)$ + tag = +email +} + +windowrule { + name = windowrule-16 + match:class = ^(codium|codium-url-handler|VSCodium)$ + tag = +projects +} + +windowrule { + name = windowrule-17 + match:class = ^(VSCode|code-url-handler)$ + tag = +projects +} + +windowrule { + name = windowrule-18 + match:class = ^(jetbrains-.+)$ # JetBrains IDEs + tag = +projects +} + +windowrule { + name = windowrule-19 + match:class = ^(com.obsproject.Studio)$ + tag = +screenshare +} + +windowrule { + name = windowrule-20 + match:class = ^([Dd]iscord|[Ww]ebCord|[Vv]esktop)$ + tag = +im +} + +windowrule { + name = windowrule-21 + match:class = ^([Ff]erdium)$ + center = on + float = on + size = 60% = 70% + tag = +im +} + +windowrule { + name = windowrule-22 + match:class = ^([Ww]hatsapp-for-linux)$ + tag = +im +} + +windowrule { + name = windowrule-23 + match:class = ^(ZapZap|com.rtosta.zapzap)$ + tag = +im +} + +windowrule { + name = windowrule-24 + match:class = ^(org.telegram.desktop|io.github.tdesktop_x64.TDesktop)$ + tag = +im +} + +windowrule { + name = windowrule-25 + match:class = ^(teams-for-linux)$ + tag = +im +} + +windowrule { + name = windowrule-26 + match:class = ^(im.riot.Riot|Element)$ # Element Matrix client + tag = +im +} + +windowrule { + name = windowrule-27 + match:class = ^(gamescope)$ + tag = +games +} + +windowrule { + name = windowrule-28 + match:class = ^(steam_app_\d+)$ + tag = +games +} + +windowrule { + name = windowrule-29 + match:class = ^([Ss]team)$ + tag = +gamestore +} + +windowrule { + name = windowrule-30 + match:title = ^([Ll]utris)$ + tag = +gamestore +} + +windowrule { + name = windowrule-31 + match:class = ^(com.heroicgameslauncher.hgl)$ + tag = +gamestore +} + +windowrule { + name = windowrule-32 + match:class = ^([Tt]hunar|org.gnome.Nautilus|[Pp]cmanfm-qt)$ + tag = +file-manager +} + +windowrule { + name = windowrule-33 + match:class = ^(app.drey.Warp)$ + tag = +file-manager +} + +windowrule { + name = windowrule-34 + match:class = ^([Ww]aytrogen)$ + tag = +wallpaper +} + +windowrule { + name = windowrule-35 + match:class = ^([Aa]udacious)$ + tag = +multimedia +} + +windowrule { + name = windowrule-36 + match:class = ^([Mm]pv|vlc)$ + tag = +multimedia_video +} + +windowrule { + name = windowrule-37 + match:title = ^(ROG Control)$ + center = on + tag = +settings +} + +windowrule { + name = windowrule-38 + match:class = ^(wihotspot(-gui)?)$ # wifi hotspot + tag = +settings +} + +windowrule { + name = windowrule-39 + match:class = ^([Bb]aobab|org.gnome.[Bb]aobab)$ # Disk usage analyzer + tag = +settings +} + +windowrule { + name = windowrule-40 + match:class = ^(gnome-disks|wihotspot(-gui)?)$ + tag = +settings +} + +windowrule { + name = windowrule-41 + match:title = (Kvantum Manager) + tag = +settings +} + +windowrule { + name = windowrule-42 + match:class = ^(file-roller|org.gnome.FileRoller)$ # archive manager + tag = +settings +} + +windowrule { + name = windowrule-43 + match:class = ^(nm-applet|nm-connection-editor|blueman-manager)$ + tag = +settings +} + +windowrule { + name = windowrule-44 + match:class = ^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$ + center = on + tag = +settings +} + +windowrule { + name = windowrule-45 + match:class = ^(qt5ct|qt6ct|[Yy]ad)$ + tag = +settings +} + +windowrule { + name = windowrule-46 + match:class = (xdg-desktop-portal-gtk) + tag = +settings +} + +windowrule { + name = windowrule-47 + match:class = ^(org.kde.polkit-kde-authentication-agent-1)$ + tag = +settings +} + +windowrule { + name = windowrule-48 + match:class = ^([Rr]ofi)$ + tag = +settings +} + +windowrule { + name = windowrule-49 + match:class = ^(gnome-system-monitor|org.gnome.SystemMonitor|io.missioncenter.MissionCenter)$ # system monitor + tag = +viewer +} + +windowrule { + name = windowrule-50 + match:class = ^(evince)$ # document viewer + tag = +viewer +} + +windowrule { + name = windowrule-51 + match:class = ^(eog|org.gnome.Loupe)$ # image viewer + tag = +viewer +} + +windowrule { + name = windowrule-52 + match:tag = multimedia_video* + no_blur = on + opacity = 1.0 +} + +windowrule { + name = windowrule-53 + match:tag = KooL_Cheat* + center = on + float = on + size = 65% = 90% +} + +windowrule { + name = windowrule-54 + match:class = ([Tt]hunar) + match:title = negative:(.*[Tt]hunar.*) + center = on + float = on +} + +windowrule { + name = windowrule-55 + match:tag = KooL-Settings* + center = on + float = on +} + +windowrule { + name = windowrule-56 + match:title = ^(Keybindings)$ + center = on +} + +windowrule { + name = windowrule-57 + match:class = ^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$ + center = on + size = 60% = 70% +} + +windowrule { + name = windowrule-58 + match:title = ^(Picture-in-Picture)$ + float = on + keepaspectratio = 1 + move = 72% = 7% + opacity = 0.95 = 0.75 + pin = 0 +} + +windowrule { + name = windowrule-59 + match:fullscreen = 1 + idle_inhibit = fullscreen +} + +windowrule { + name = windowrule-60 + match:tag = wallpaper* + float = on + opacity = 0.9 = 0.7 + size = 70% = 70% +} + +windowrule { + name = windowrule-61 + match:tag = settings* + float = on + opacity = 0.8 = 0.7 + size = 70% = 70% +} + +windowrule { + name = windowrule-62 + match:tag = viewer* + float = on + opacity = 0.82 = 0.75 +} + +windowrule { + name = windowrule-63 + match:class = ([Zz]oom|onedriver|onedriver-launcher)$ + float = on +} + +windowrule { + name = windowrule-64 + match:class = (org.gnome.Calculator) + match:title = (Calculator) + float = on +} + +windowrule { + name = windowrule-65 + match:class = ^(mpv|com.github.rafostar.Clapper)$ + float = on +} + +windowrule { + name = windowrule-66 + match:class = ^([Qq]alculate-gtk)$ + float = on +} + +windowrule { + name = windowrule-67 + match:title = ^(Authentication Required)$ + center = on + float = on +} + +windowrule { + name = windowrule-68 + match:class = (codium|codium-url-handler|VSCodium) + match:title = negative:(.*codium.*|.*VSCodium.*) + float = on +} + +windowrule { + name = windowrule-69 + match:class = ^(com.heroicgameslauncher.hgl)$ + match:title = negative:(Heroic Games Launcher) + float = on +} + +windowrule { + name = windowrule-70 + match:class = ^([Ss]team)$ + match:title = negative:^([Ss]team)$ + float = on +} + +windowrule { + name = windowrule-71 + match:title = ^(Add Folder to Workspace)$ + center = on + float = on + size = 70% = 60% +} + +windowrule { + name = windowrule-72 + match:title = ^(Save As)$ + center = on + float = on + size = 70% = 60% +} + +windowrule { + name = windowrule-73 + match:initial_title = (Open Files) + float = on + size = 70% = 60% +} + +windowrule { + name = windowrule-74 + match:title = ^(SDDM Background)$ #KooL's Dots YAD for setting SDDM background + center = on + float = on + size = 16% = 12% +} + +windowrule { + name = windowrule-75 + match:tag = browser* + opacity = 0.99 = 0.8 +} + +windowrule { + name = windowrule-76 + match:tag = projects* + opacity = 0.9 = 0.8 +} + +windowrule { + name = windowrule-77 + match:tag = im* + opacity = 0.94 = 0.86 +} + +windowrule { + name = windowrule-78 + match:tag = multimedia* + opacity = 0.94 = 0.86 +} + +windowrule { + name = windowrule-79 + match:tag = file-manager* + opacity = 0.9 = 0.8 +} + +windowrule { + name = windowrule-80 + match:tag = terminal* + opacity = 0.9 = 0.7 +} + +windowrule { + name = windowrule-81 + match:class = ^(gedit|org.gnome.TextEditor|mousepad)$ + opacity = 0.8 = 0.7 +} + +windowrule { + name = windowrule-82 + match:class = ^(deluge)$ + opacity = 0.9 = 0.8 +} + +windowrule { + name = windowrule-83 + match:class = ^(seahorse)$ # gnome-keyring gui + opacity = 0.9 = 0.8 +} + +windowrule { + name = windowrule-84 + match:class = ^(code)$ + opacity = 0.8 + opacity = 0.9 +} + +windowrule { + name = windowrule-85 + match:tag = games* + fullscreen = 0 + no_blur = on +} + +windowrule { + name = windowrule-86 + match:class = ^(jetbrains-*) + no_initial_focus = on +} + +windowrule { + name = windowrule-87 + match:title = ^(wind.*)$ + no_initial_focus = on +} + +# --- Auto-generated layer rules --- +layerrule { + name = layerrule-1 + match:namespace = rofi + blur = on + ignore_alpha = 0 +} + +layerrule { + name = layerrule-2 + match:namespace = notifications + blur = on + ignore_alpha = 0 +} + +layerrule { + name = layerrule-3 + match:namespace = quickshell:overview + blur = on + ignore_alpha = 0 + ignore_alpha = 0.5 +} -- cgit v1.2.3