# /* ---- 💫 https://github.com/JaKooLit 💫 ---- */ # # Vendor defaults for window rules and layerrules # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more # NOTES: This is only for Hyprland >= 0.53 # Some samples on hwo to start apps on specific workspaces # windowrule = match:tag email*, workspace 1 # windowrule = match:tag browser*, workspace 2 # windowrule = match:tag projects*, workspace 3 # windowrule = match:tag screenshare*, workspace 4 silent # windowrule = match:tag gamestore*, workspace 5 # windowrule = match:class ^(virt-manager)$, workspace 6 silent # windowrule = match:class ^(.virt-manager-wrapped)$, workspace 6 silent # windowrule = match:tag im*, workspace 7 # windowrule = match:class obsidian, workspace 8 # windowrule = match:tag games*, workspace 8 # windowrule = match:tag multimedia*, workspace 9 silent # TAGS - add apps under appropriate tag to use the same settings # browser tags windowrule = match:class ^([Ff]irefox|org.mozilla.firefox|[Ff]irefox-esr|[Ff]irefox-bin)$, tag +browser windowrule = match:class ^([Gg]oogle-chrome(-beta|-dev|-unstable)?)$, tag +browser windowrule = match:class ^(chrome-.+-Default)$, tag +browser windowrule = match:class ^([Cc]hromium)$, tag +browser windowrule = match:class ^([Mm]icrosoft-edge(-stable|-beta|-dev|-unstable))$, tag +browser windowrule = match:class ^(Brave-browser(-beta|-dev|-unstable)?)$, tag +browser windowrule = match:class ^([Tt]horium-browser|[Cc]achy-browser)$, tag +browser windowrule = match:class ^(zen)$, tag +browser # notif tags windowrule = match:class ^(swaync-control-center|swaync-notification-window|swaync-client|class)$, tag +notif # KooL settings tag windowrule = match:title ^(KooL Quick Cheat Sheet)$, tag +KooL_Cheat windowrule = match:title ^(KooL Hyprland Settings)$, tag +KooL_Settings windowrule = match:class ^(nwg-displays|nwg-look)$, tag +KooL-Settings # terminal tags windowrule = match:class ^(Alacritty|kitty|kitty-dropterm)$, tag +terminal # email tags windowrule = match:class ^([Tt]hunderbird|org.mozilla.Thunderbird)$, tag +email windowrule = match:class ^(eu.betterbird.Betterbird)$, tag +email windowrule = match:class ^(org.gnome.Evolution)$, tag +email # project tags windowrule = match:class ^(codium|codium-url-handler|VSCodium)$, tag +projects windowrule = match:class ^(VSCode|code|code-url-handler)$, tag +projects windowrule = match:class ^(jetbrains-.+)$, tag +projects windowrule = match:class ^(dev.zed.Zed|antigravity)$, tag +projects # screenshare tags windowrule = match:class ^(com.obsproject.Studio)$, tag +screenshare # IM tags windowrule = match:class ^([Dd]iscord|[Ww]ebCord|[Vv]esktop)$, tag +im windowrule = match:class ^([Ff]erdium)$, tag +im windowrule = match:class ^([Ww]hatsapp-for-linux)$, tag +im windowrule = match:class ^(org.telegram.desktop|io.github.tdesktop_x64.TDesktop)$, tag +im windowrule = match:class ^(teams-for-linux)$, tag +im windowrule = match:class ^(im.riot.Riot|Element)$, tag +im # game tags windowrule = match:class ^(gamescope)$, tag +games windowrule = match:class ^(steam_app_\\d+)$, tag +games # gamestore tags windowrule = match:class ^([Ss]team)$, tag +gamestore windowrule = match:title ^([Ll]utris)$, tag +gamestore windowrule = match:class ^(com.heroicgameslauncher.hgl)$, tag +gamestore # file-manager tags windowrule = match:class ^([Tt]hunar|org.gnome.Nautilus|[Pp]cmanfm-qt)$, tag +file-manager windowrule = match:class ^(app.drey.Warp)$, tag +file-manager # wallpaper tags windowrule = match:class ^([Ww]aytrogen)$, tag +wallpaper # multimedia tags windowrule = match:class ^([Aa]udacious)$, tag +multimedia # multimedia-video tags windowrule = match:class ^([Mm]pv|vlc)$, tag +multimedia_video # settings tags windowrule = match:title ^(ROG Control)$, tag +settings windowrule = match:class ^(wihotspot(-gui)?)$, tag +settings windowrule = match:class ^([Bb]aobab|org.gnome.[Bb]aobab)$, tag +settings windowrule = match:class ^(gnome-disks|wihotspot(-gui)?)$, tag +settings windowrule = match:title (Kvantum Manager), tag +settings windowrule = match:class ^(file-roller|org.gnome.FileRoller)$, tag +settings windowrule = match:class ^(nm-applet|nm-connection-editor|blueman-manager)$, tag +settings windowrule = match:class ^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$, tag +settings windowrule = match:class ^(qt5ct|qt6ct)$, tag +settings windowrule = match:class (xdg-desktop-portal-gtk), tag +settings windowrule = match:class ^(org.kde.polkit-kde-authentication-agent-1)$, tag +settings windowrule = match:class ^([Rr]ofi)$, tag +settings # viewer tags windowrule = match:class ^(gnome-system-monitor|org.gnome.SystemMonitor|io.missioncenter.MissionCenter)$, tag +viewer windowrule = match:class ^(evince)$, tag +viewer windowrule = match:class ^(eog|org.gnome.Loupe)$, tag +viewer # Some special override rules windowrule = match:tag multimedia_video, no_blur on windowrule = match:tag multimedia_video, opacity 1.0 windowrule = match:tag multimedia, no_blur on windowrule = match:tag multimedia, opacity 1.0 # POSITION windowrule = match:tag KooL_Cheat, center on windowrule = match:title ^(ROG Control)$, center on windowrule = match:tag KooL-Settings, center on windowrule = match:title ^(Keybindings)$, center on windowrule = match:class ^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$, center on windowrule = match:class ^([Ff]erdium)$, center on # windowrule to avoid idle for fullscreen apps windowrule = match:fullscreen true, idle_inhibit fullscreen windowrule = idle_inhibit fullscreen, match:fullscreen 1 windowrule = idle_inhibit fullscreen, match:class ^(*)$ windowrule = idle_inhibit fullscreen, match:title ^(*)$ # FLOAT windowrule = match:tag KooL_Cheat, float on, center on windowrule = match:tag wallpaper, float on, center on windowrule = match:tag settings, float on, center on windowrule = match:tag viewer, float on, center on windowrule = match:tag KooL-Settings, float on, center on windowrule = match:class ([Zz]oom|onedriver|onedriver-launcher), float on windowrule = match:class (org.gnome.Calculator|qalculate-gtk), float on windowrule = match:class ^(mpv|com.github.rafostar.Clapper)$, float on windowrule = match:class ^([Qq]alculate-gtk)$, float on windowrule = match:class ^([Ff]erdium)$, float on # popups and dialogue windowrule = match:title ^(Authentication Required)$, float on, center on windowrule = match:class (codium|codium-url-handler|VSCodium) match:title negative:(.*codium.*|.*VSCodium.*), float on windowrule = match:class ^(com.heroicgameslauncher.hgl)$ match:title negative:(Heroic Games Launcher), float on windowrule = match:class ^([Ss]team)$ match:title negative:^([Ss]team)$, float on windowrule = match:title ^(Add Folder to Workspace)$, float on, size (monitor_w*0.7) (monitor_h*0.6), center on windowrule = match:title ^(Save As)$, float on, size (monitor_w*0.7) (monitor_h*0.6), center on windowrule = match:initial_title (Open Files), float on, size (monitor_w*0.7) (monitor_h*0.6) windowrule = match:title ^(SDDM Background)$, float on, center on, size (monitor_w*0.16) (monitor_h*0.12) windowrule = match:class ^(yad)$, float on, center on, size (monitor_w*0.2) (monitor_h*0.2) # OPACITY windowrule = match:tag browser, opacity 0.99 0.8 windowrule = match:tag projects, opacity 0.9 0.8 windowrule = match:tag im, opacity 0.94 0.86 windowrule = match:tag multimedia, opacity 0.94 0.86 windowrule = match:tag file-manager, opacity 0.9 0.8 windowrule = match:tag terminal, opacity 0.9 0.7 windowrule = match:tag settings, opacity 0.8 0.7 windowrule = match:tag viewer, opacity 0.82 0.75 windowrule = match:tag wallpaper, opacity 0.9 0.7 windowrule = match:class ^(gedit|org.gnome.TextEditor|mousepad)$, opacity 0.8 0.7 windowrule = match:class ^(deluge)$, opacity 0.9 0.8 windowrule = match:class ^(seahorse)$, opacity 0.9 0.8 # SIZE windowrule = match:tag KooL_Cheat, size (monitor_w*0.65) (monitor_h*0.9) windowrule = match:tag wallpaper, size (monitor_w*0.7) (monitor_h*0.7) windowrule = match:tag settings, size (monitor_w*0.7) (monitor_h*0.7) windowrule = match:class ^([Ff]erdium)$, size (monitor_w*0.6) (monitor_h*0.7) windowrule = match:class (org.gnome.Calculator|qalculate-gtk), center on, size (monitor_w*0.25) (monitor_h*0.3) # BLUR & FULLSCREEN windowrule = match:tag games, no_blur on, fullscreen 0 windowrule = match:tag games, fullscreen 0 # This not gonna take the focus to the window that appears when # hovering over some of the parts of the IntelliJ Products windowrule = match:class ^(jetbrains-*), no_initial_focus on windowrule = match:title ^(wind.*)$, no_initial_focus on # LAYER RULES layerrule = match:namespace rofi, blur on layerrule = match:namespace notifications, blur on layerrule = match:namespace quickshell:overview, blur on layerrule = match:namespace quickshell:overview, ignore_alpha 0.5 # Named rules for special cases windowrule { name = Whatsapp-zapzap match:class = ^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$ float = on size = (monitor_w*0.6) (monitor_h*0.7) center = on } # Picture-in-Picture windowrule { name = Picture-in-Picture match:title = ^(Picture-in-Picture)$ float = on move = 72% 7% opacity = 0.95 0.75 pin = on keep_aspect_ratio = on size = (monitor_w*0.3) (monitor_h*0.3) } # Thunar copy progress dialog windowrule { name = Thunar-Progress-bar match:class = ^(thunar)$ match:title = ^(File Operation Progress)$ float = on center = on size = (monitor_w*0.26) (monitor_h*0.18) }