hyprland-dotfiles/config/hypr/UserConfigs/WindowRules.conf

195 lines
8.4 KiB
Plaintext
Raw Normal View History

2025-02-20 21:55:10 +00:00
# For window rules and layerrules
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# windowrule v2 - tags - add apps under appropriate tag to use the same settings
# browser tags
windowrulev2 = tag +browser, class:^([Ff]irefox|org.mozilla.firefox|[Ff]irefox-esr)$
windowrulev2 = tag +browser, class:^([Gg]oogle-chrome(-beta|-dev|-unstable)?)$
windowrulev2 = tag +browser, class:^(chrome-.+-Default)$ # Chrome PWAs
windowrulev2 = tag +browser, class:^([Cc]hromium)$
windowrulev2 = tag +browser, class:^([Mm]icrosoft-edge(-stable|-beta|-dev|-unstable))$
windowrulev2 = tag +browser, class:^(Brave-browser(-beta|-dev|-unstable)?)$
windowrulev2 = tag +browser, class:^([Tt]horium-browser|[Cc]achy-browser)$
windowrulev2 = tag +browser, class:^(zen-alpha|zen)$
windowrulev2 = tag +notif, class:^(swaync-control-center|swaync-notification-window|swaync-client|class)$
# terminal tags
windowrulev2 = tag +terminal, class:^(Alacritty|kitty|kitty-dropterm)$
# email tags
windowrulev2 = tag +email, class:^([Tt]hunderbird|org.gnome.Evolution)$
windowrulev2 = tag +email, class:^(eu.betterbird.Betterbird)$
# project tags
windowrulev2 = tag +projects, class:^(codium|codium-url-handler|VSCodium)$
windowrulev2 = tag +projects, class:^(VSCode|code-url-handler)$
windowrulev2 = tag +projects, class:^(jetbrains-.+)$ # JetBrains IDEs
# screenshare tags
windowrulev2 = tag +screenshare, class:^(com.obsproject.Studio)$
# IM tags
windowrulev2 = tag +im, class:^([Dd]iscord|[Ww]ebCord|[Vv]esktop)$
windowrulev2 = tag +im, class:^([Ff]erdium)$
windowrulev2 = tag +im, class:^([Ww]hatsapp-for-linux)$
windowrulev2 = tag +im, class:^(ZapZap|com.rtosta.zapzap)$
windowrulev2 = tag +im, class:^(org.telegram.desktop|io.github.tdesktop_x64.TDesktop)$
windowrulev2 = tag +im, class:^(teams-for-linux)$
# game tags
windowrulev2 = tag +games, class:^(gamescope)$
windowrulev2 = tag +games, class:^(steam_app_\d+)$
# gamestore tags
windowrulev2 = tag +gamestore, class:^([Ss]team)$
windowrulev2 = tag +gamestore, title:^([Ll]utris)$
windowrulev2 = tag +gamestore, class:^(com.heroicgameslauncher.hgl)$
# file-manager tags
windowrulev2 = tag +file-manager, class:^([Tt]hunar|org.gnome.Nautilus|[Pp]cmanfm-qt)$
windowrulev2 = tag +file-manager, class:^(app.drey.Warp)$
# wallpaper tags
windowrulev2 = tag +wallpaper title:^([Ww]aytrogen)$
windowrulev2 = tag +wallpaper, class:^([Ww]aytrogen)$
# multimedia tags
windowrulev2 = tag +multimedia, class:^([Aa]udacious)$
# settings tags
windowrulev2 = tag +settings, title:^(ROG Control)$
windowrulev2 = tag +settings, class:^(wihotspot(-gui)?)$ # wifi hotspot
windowrulev2 = tag +settings, class:^([Bb]aobab|org.gnome.[Bb]aobab)$ # Disk usage analyzer
windowrulev2 = tag +settings, class:^(gnome-disks|wihotspot(-gui)?)$
windowrulev2 = tag +settings, title:(Kvantum Manager)
windowrulev2 = tag +settings, class:^(file-roller|org.gnome.FileRoller)$ # archive manager
windowrulev2 = tag +settings, class:^(nm-applet|nm-connection-editor|blueman-manager)$
windowrulev2 = tag +settings, class:^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$
windowrulev2 = tag +settings, class:^(nwg-look|qt5ct|qt6ct|[Yy]ad)$
windowrulev2 = tag +settings, class:(xdg-desktop-portal-gtk)
windowrulev2 = tag +settings, class:^(org.kde.polkit-kde-authentication-agent-1)$
windowrulev2 = tag +settings, class:^([Rr]ofi)$
# viewer tags
windowrulev2 = tag +viewer, class:^(gnome-system-monitor|org.gnome.SystemMonitor|io.missioncenter.MissionCenter)$ # system monitor
windowrulev2 = tag +viewer, class:^(evince)$ # document viewer
windowrulev2 = tag +viewer, class:^(eog|org.gnome.Loupe)$ # image viewer
# POSITION
# windowrulev2 = center,floating:1 # warning, it cause even the menu to float and center.
windowrulev2 = center, title:^(Quick Cheat Sheet)$
windowrulev2 = center, class:([Tt]hunar), title:negative:(.*[Tt]hunar.*)
windowrulev2 = center, title:^(ROG Control)$
windowrulev2 = center, title:^(Keybindings)$
windowrulev2 = center, class:^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$
windowrulev2 = center, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
windowrulev2 = center, class:^([Ff]erdium)$
windowrulev2 = move 72% 7%,title:^(Picture-in-Picture)$
#windowrulev2 = move 72% 7%,title:^(Firefox)$
# windowrule v2 to avoid idle for fullscreen apps
#windowrulev2 = idleinhibit fullscreen, class:^(*)$
#windowrulev2 = idleinhibit fullscreen, title:^(*)$
windowrulev2 = idleinhibit fullscreen, fullscreen:1
# windowrule v2 move to workspace
windowrulev2 = workspace 1, tag:email*
windowrulev2 = workspace 2, tag:browser*
#windowrulev2 = workspace 3, class:^([Tt]hunar)$
#windowrulev2 = workspace 3, tag:projects*
windowrulev2 = workspace 5, tag:gamestore*
windowrulev2 = workspace 7, tag:im*
windowrulev2 = workspace 8, tag:games*
# windowrule v2 move to workspace (silent)
windowrulev2 = workspace 4 silent, tag:screenshare*
windowrulev2 = workspace 6 silent, class:^(virt-manager)$
windowrulev2 = workspace 6 silent, class:^(.virt-manager-wrapped)$
windowrulev2 = workspace 9 silent, tag:multimedia*
# FLOAT
windowrulev2 = float, title:^(Quick Cheat Sheet)$
windowrulev2 = float, tag:wallpaper*
windowrulev2 = float, tag:settings*
windowrulev2 = float, tag:viewer*
windowrulev2 = float, class:([Zz]oom|onedriver|onedriver-launcher)$
windowrulev2 = float, class:(org.gnome.Calculator), title:(Calculator)
windowrulev2 = float, class:^(mpv|com.github.rafostar.Clapper)$
windowrulev2 = float, class:^([Qq]alculate-gtk)$
#windowrulev2 = float, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
windowrulev2 = float, class:^([Ff]erdium)$
windowrulev2 = float, title:^(Picture-in-Picture)$
#windowrulev2 = float, title:^(Firefox)$
#windowrule v2 - float popups and dialogue
windowrulev2 = float, title:^(Authentication Required)$
windowrulev2 = center, title:^(Authentication Required)$
windowrulev2 = float, class:(codium|codium-url-handler|VSCodium), title:negative:(.*codium.*|.*VSCodium.*)
windowrulev2 = float, class:^(com.heroicgameslauncher.hgl)$, title:negative:(Heroic Games Launcher)
windowrulev2 = float, class:^([Ss]team)$, title:negative:^([Ss]team)$
windowrulev2 = float, class:([Tt]hunar), title:negative:(.*[Tt]hunar.*)
#windowrulev2 = float, class:(electron), title:(Add Folder to Workspace)
windowrulev2 = float, title:^(Add Folder to Workspace)$
windowrulev2 = size 70% 60%, title:^(Add Folder to Workspace)$
windowrulev2 = center, title:^(Add Folder to Workspace)$
windowrulev2 = float, initialTitle:(Open Files)
windowrulev2 = size 70% 60%, initialTitle:(Open Files)
# OPACITY
windowrulev2 = opacity 0.9 0.7, tag:browser*
windowrulev2 = opacity 0.9 0.8, tag:projects*
windowrulev2 = opacity 0.94 0.86, tag:im*
windowrulev2 = opacity 0.94 0.86, tag:multimedia*
windowrulev2 = opacity 0.9 0.8, tag:file-manager*
windowrulev2 = opacity 0.8 0.7, tag:terminal*
windowrulev2 = opacity 0.8 0.7, tag:settings*
windowrulev2 = opacity 0.82 0.75, tag:viewer*
windowrulev2 = opacity 0.9 0.7, tag:wallpaper*
windowrulev2 = opacity 0.8 0.7, class:^(gedit|org.gnome.TextEditor|mousepad)$
windowrulev2 = opacity 0.9 0.8, class:^(deluge)$
windowrulev2 = opacity 0.9 0.8, class:^(im.riot.Riot)$ # Element matrix client
windowrulev2 = opacity 0.9 0.8, class:^(seahorse)$ # gnome-keyring gui
windowrulev2 = opacity 0.95 0.75, title:^(Picture-in-Picture)$
# SIZE
windowrulev2 = size 65% 90%, title:^(Quick Cheat Sheet)$
windowrulev2 = size 70% 70%, tag:wallpaper*
windowrulev2 = size 70% 70%, tag:settings*
windowrulev2 = size 60% 70%, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
windowrulev2 = size 60% 70%, class:^([Ff]erdium)$
#windowrulev2 = size 25% 25%, title:^(Picture-in-Picture)$
#windowrulev2 = size 25% 25%, title:^(Firefox)$
# PINNING
windowrulev2 = pin, title:^(Picture-in-Picture)$
#windowrulev2 = pin,title:^(Firefox)$
# windowrule v2 - extras
windowrulev2 = keepaspectratio, title:^(Picture-in-Picture)$
# BLUR & FULLSCREEN
windowrulev2 = noblur, tag:games*
windowrulev2 = fullscreen, tag:games*
#windowrulev2 = bordercolor rgb(EE4B55) rgb(880808), fullscreen:1
#windowrulev2 = bordercolor rgb(282737) rgb(1E1D2D), floating:1
#windowrulev2 = opacity 0.8 0.8, pinned:1
# LAYER RULES
layerrule = blur, rofi
layerrule = ignorezero, rofi
layerrule = blur, notifications
layerrule = ignorezero, notifications
#layerrule = ignorealpha 0.5, tag:notif*
#layerrule = ignorezero, class:^([Rr]ofi)$
#layerrule = blur, class:^([Rr]ofi)$
#layerrule = unset,class:^([Rr]ofi)$
#layerrule = ignorezero, <rofi>
#layerrule = ignorezero, overview
#layerrule = blur, overview