hyprland: migrate to new windowrule syntax

This commit is contained in:
Moeta Yuko
2025-11-23 11:58:56 +00:00
parent c78c363388
commit 55152aee4b
3 changed files with 132 additions and 132 deletions
+1 -1
View File
@@ -31,4 +31,4 @@ plugin {
} }
} }
windowrulev2 = bordercolor rgba(FFB2BCAA) rgba(FFB2BC77),pinned:1 windowrule = border_color rgba(FFB2BCAA) rgba(FFB2BC77), match:pin 1
+130 -130
View File
@@ -1,165 +1,165 @@
# ######## Window rules ######## # ######## Window rules ########
# Uncomment to apply global transparency to all windows: # Uncomment to apply global transparency to all windows:
# windowrulev2 = opacity 0.89 override 0.89 override, class:.* # windowrule = opacity 0.89 override 0.89 override, match:class .*
# Disable blur for xwayland context menus # Disable blur for xwayland context menus
windowrulev2 = noblur,class:^()$,title:^()$ windowrule = no_blur on, match:class ^()$, match:title ^()$
# Disable blur for all xwayland apps # Disable blur for all xwayland apps
# windowrulev2 = noblur, xwayland:1 # windowrule = no_blur on, match:xwayland 1
# Disable blur for every window # Disable blur for every window
windowrulev2 = noblur, class:.* windowrule = no_blur on, match:class .*
# Floating # Floating
windowrulev2 = center, title:^(Open File)(.*)$ windowrule = center on, match:title ^(Open File)(.*)$
windowrulev2 = float, title:^(Open File)(.*)$ windowrule = float on, match:title ^(Open File)(.*)$
windowrulev2 = center, title:^(Select a File)(.*)$ windowrule = center on, match:title ^(Select a File)(.*)$
windowrulev2 = float, title:^(Select a File)(.*)$ windowrule = float on, match:title ^(Select a File)(.*)$
windowrulev2 = center, title:^(Choose wallpaper)(.*)$ windowrule = center on, match:title ^(Choose wallpaper)(.*)$
windowrulev2 = float, title:^(Choose wallpaper)(.*)$ windowrule = float on, match:title ^(Choose wallpaper)(.*)$
windowrulev2 = size 60% 65%, title:^(Choose wallpaper)(.*)$ windowrule = size 60% 65%, match:title ^(Choose wallpaper)(.*)$
windowrulev2 = center, title:^(Open Folder)(.*)$ windowrule = center on, match:title ^(Open Folder)(.*)$
windowrulev2 = float, title:^(Open Folder)(.*)$ windowrule = float on, match:title ^(Open Folder)(.*)$
windowrulev2 = center, title:^(Save As)(.*)$ windowrule = center on, match:title ^(Save As)(.*)$
windowrulev2 = float, title:^(Save As)(.*)$ windowrule = float on, match:title ^(Save As)(.*)$
windowrulev2 = center, title:^(Library)(.*)$ windowrule = center on, match:title ^(Library)(.*)$
windowrulev2 = float, title:^(Library)(.*)$ windowrule = float on, match:title ^(Library)(.*)$
windowrulev2 = center, title:^(File Upload)(.*)$ windowrule = center on, match:title ^(File Upload)(.*)$
windowrulev2 = float, title:^(File Upload)(.*)$ windowrule = float on, match:title ^(File Upload)(.*)$
windowrulev2 = center, title:^(.*)(wants to save)$ windowrule = center on, match:title ^(.*)(wants to save)$
windowrulev2 = float, title:^(.*)(wants to save)$ windowrule = float on, match:title ^(.*)(wants to save)$
windowrulev2 = center, title:^(.*)(wants to open)$ windowrule = center on, match:title ^(.*)(wants to open)$
windowrulev2 = float, title:^(.*)(wants to open)$ windowrule = float on, match:title ^(.*)(wants to open)$
windowrulev2 = float, class:^(blueberry\.py)$ windowrule = float on, match:class ^(blueberry\.py)$
windowrulev2 = float, class:^(guifetch)$ # FlafyDev/guifetch windowrule = float on, match:class ^(guifetch)$ # FlafyDev/guifetch
windowrulev2 = float, class:^(pavucontrol)$ windowrule = float on, match:class ^(pavucontrol)$
windowrulev2 = size 45%, class:^(pavucontrol)$ windowrule = size 45%, match:class ^(pavucontrol)$
windowrulev2 = center, class:^(pavucontrol)$ windowrule = center on, match:class ^(pavucontrol)$
windowrulev2 = float, class:^(org.pulseaudio.pavucontrol)$ windowrule = float on, match:class ^(org.pulseaudio.pavucontrol)$
windowrulev2 = size 45%, class:^(org.pulseaudio.pavucontrol)$ windowrule = size 45%, match:class ^(org.pulseaudio.pavucontrol)$
windowrulev2 = center, class:^(org.pulseaudio.pavucontrol)$ windowrule = center on, match:class ^(org.pulseaudio.pavucontrol)$
windowrulev2 = float, class:^(nm-connection-editor)$ windowrule = float on, match:class ^(nm-connection-editor)$
windowrulev2 = size 45%, class:^(nm-connection-editor)$ windowrule = size 45%, match:class ^(nm-connection-editor)$
windowrulev2 = center, class:^(nm-connection-editor)$ windowrule = center on, match:class ^(nm-connection-editor)$
windowrulev2 = float, class:.*plasmawindowed.* windowrule = float on, match:class .*plasmawindowed.*
windowrulev2 = float, class:kcm_.* windowrule = float on, match:class kcm_.*
windowrulev2 = float, class:.*bluedevilwizard windowrule = float on, match:class .*bluedevilwizard
windowrulev2 = float, title:.*Welcome windowrule = float on, match:title .*Welcome
windowrulev2 = float, title:^(illogical-impulse Settings)$ windowrule = float on, match:title ^(illogical-impulse Settings)$
windowrulev2 = float, title:.*Shell conflicts.* windowrule = float on, match:title .*Shell conflicts.*
windowrulev2 = float, class:org.freedesktop.impl.portal.desktop.kde windowrule = float on, match:class org.freedesktop.impl.portal.desktop.kde
windowrulev2 = size 60% 65%, class:org.freedesktop.impl.portal.desktop.kde windowrule = size 60% 65%, match:class org.freedesktop.impl.portal.desktop.kde
windowrulev2 = float, class:^(Zotero)$ windowrule = float on, match:class ^(Zotero)$
windowrulev2 = size 45%, class:^(Zotero)$ windowrule = size 45%, match:class ^(Zotero)$
# Move # Move
# kde-material-you-colors spawns a window when changing dark/light theme. This is to make sure it doesn't interfere at all. # kde-material-you-colors spawns a window when changing dark/light theme. This is to make sure it doesn't interfere at all.
windowrulev2 = float, class:^(plasma-changeicons)$ windowrule = float on, match:class ^(plasma-changeicons)$
windowrulev2 = noinitialfocus, class:^(plasma-changeicons)$ windowrule = no_initial_focus on, match:class ^(plasma-changeicons)$
windowrulev2 = move 999999 999999, class:^(plasma-changeicons)$ windowrule = move 999999 999999, match:class ^(plasma-changeicons)$
# stupid dolphin copy # stupid dolphin copy
windowrulev2 = move 40 80, title:^(Copying — Dolphin)$ windowrule = move 40 80, match:title ^(Copying — Dolphin)$
# Tiling # Tiling
windowrulev2 = tile, class:^dev\.warp\.Warp$ windowrule = tile on, match:class ^dev\.warp\.Warp$
# Picture-in-Picture # Picture-in-Picture
windowrulev2 = float, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$ windowrule = float on, match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
windowrulev2 = keepaspectratio, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$ windowrule = keep_aspect_ratio on, match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
windowrulev2 = move 73% 72%, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$ windowrule = move 73% 72%, match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
windowrulev2 = size 25%, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$ windowrule = size 25%, match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
windowrulev2 = float, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$ windowrule = float on, match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
windowrulev2 = pin, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$ windowrule = pin on, match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
# --- Tearing --- # --- Tearing ---
windowrulev2 = immediate, title:.*\.exe windowrule = immediate on, match:title .*\.exe
windowrulev2 = immediate, title:.*minecraft.* windowrule = immediate on, match:title .*minecraft.*
windowrulev2 = immediate, class:^(steam_app).* windowrule = immediate on, match:class ^(steam_app).*
# Fix Jetbrain IDEs focus/rerendering problem # Fix Jetbrain IDEs focus/rerendering problem
windowrulev2=noinitialfocus,class:^jetbrains-.*$,floating:1,title:^$|^\s$|^win\d+$ windowrule=no_initial_focus on, match:class ^jetbrains-.*$, match:float 1,match:title ^$|^\s$|^win\d+$
# No shadow for tiled windows (matches windows that are not floating). # No shadow for tiled windows (matches windows that are not floating).
windowrulev2 = noshadow, floating:0 windowrule = no_shadow on, match:float 0
# ######## Workspace rules ######## # ######## Workspace rules ########
workspace = special:special, gapsout:30 workspace = special:special, gapsout:30
# ######## Layer rules ######## # ######## Layer rules ########
layerrule = xray 1, .* layerrule = xray 1, match:namespace .*
# layerrule = noanim, .* # layerrule = no_anim on, .*
layerrule = noanim, walker layerrule = no_anim on, match:namespace walker
layerrule = noanim, selection layerrule = no_anim on, match:namespace selection
layerrule = noanim, overview layerrule = no_anim on, match:namespace overview
layerrule = noanim, anyrun layerrule = no_anim on, match:namespace anyrun
layerrule = noanim, indicator.* layerrule = no_anim on, match:namespace indicator.*
layerrule = noanim, osk layerrule = no_anim on, match:namespace osk
layerrule = noanim, hyprpicker layerrule = no_anim on, match:namespace hyprpicker
layerrule = noanim, noanim layerrule = no_anim on, match:namespace no_anim on
layerrule = blur, gtk-layer-shell layerrule = blur on, match:namespace gtk-layer-shell
layerrule = ignorezero, gtk-layer-shell layerrule = ignore_alpha 0, match:namespace gtk-layer-shell
layerrule = blur, launcher layerrule = blur on, match:namespace launcher
layerrule = ignorealpha 0.5, launcher layerrule = ignore_alpha 0.5, match:namespace launcher
layerrule = blur, notifications layerrule = blur on, match:namespace notifications
layerrule = ignorealpha 0.69, notifications layerrule = ignore_alpha 0.69, match:namespace notifications
layerrule = blur, logout_dialog # wlogout layerrule = blur on, match:namespace logout_dialog # wlogout
# ags # ags
layerrule = animation slide left, sideleft.* layerrule = animation slide left, match:namespace sideleft.*
layerrule = animation slide right, sideright.* layerrule = animation slide right, match:namespace sideright.*
layerrule = blur, session[0-9]* layerrule = blur on, match:namespace session[0-9]*
layerrule = blur, bar[0-9]* layerrule = blur on, match:namespace bar[0-9]*
layerrule = ignorealpha 0.6, bar[0-9]* layerrule = ignore_alpha 0.6, match:namespace bar[0-9]*
layerrule = blur, barcorner.* layerrule = blur on, match:namespace barcorner.*
layerrule = ignorealpha 0.6, barcorner.* layerrule = ignore_alpha 0.6, match:namespace barcorner.*
layerrule = blur, dock[0-9]* layerrule = blur on, match:namespace dock[0-9]*
layerrule = ignorealpha 0.6, dock[0-9]* layerrule = ignore_alpha 0.6, match:namespace dock[0-9]*
layerrule = blur, indicator.* layerrule = blur on, match:namespace indicator.*
layerrule = ignorealpha 0.6, indicator.* layerrule = ignore_alpha 0.6, match:namespace indicator.*
layerrule = blur, overview[0-9]* layerrule = blur on, match:namespace overview[0-9]*
layerrule = ignorealpha 0.6, overview[0-9]* layerrule = ignore_alpha 0.6, match:namespace overview[0-9]*
layerrule = blur, cheatsheet[0-9]* layerrule = blur on, match:namespace cheatsheet[0-9]*
layerrule = ignorealpha 0.6, cheatsheet[0-9]* layerrule = ignore_alpha 0.6, match:namespace cheatsheet[0-9]*
layerrule = blur, sideright[0-9]* layerrule = blur on, match:namespace sideright[0-9]*
layerrule = ignorealpha 0.6, sideright[0-9]* layerrule = ignore_alpha 0.6, match:namespace sideright[0-9]*
layerrule = blur, sideleft[0-9]* layerrule = blur on, match:namespace sideleft[0-9]*
layerrule = ignorealpha 0.6, sideleft[0-9]* layerrule = ignore_alpha 0.6, match:namespace sideleft[0-9]*
layerrule = blur, indicator.* layerrule = blur on, match:namespace indicator.*
layerrule = ignorealpha 0.6, indicator.* layerrule = ignore_alpha 0.6, match:namespace indicator.*
layerrule = blur, osk[0-9]* layerrule = blur on, match:namespace osk[0-9]*
layerrule = ignorealpha 0.6, osk[0-9]* layerrule = ignore_alpha 0.6, match:namespace osk[0-9]*
# Quickshell # Quickshell
layerrule = blurpopups, quickshell:.* layerrule = blur_popups on, match:namespace quickshell:.*
layerrule = blur, quickshell:.* layerrule = blur on, match:namespace quickshell:.*
layerrule = ignorealpha 0.79, quickshell:.* layerrule = ignore_alpha 0.79, match:namespace quickshell:.*
layerrule = animation slide, quickshell:bar layerrule = animation slide, match:namespace quickshell:bar
layerrule = noanim, quickshell:actionCenter layerrule = no_anim on, match:namespace quickshell:actionCenter
layerrule = animation slide bottom, quickshell:cheatsheet layerrule = animation slide bottom, match:namespace quickshell:cheatsheet
layerrule = animation slide bottom, quickshell:dock layerrule = animation slide bottom, match:namespace quickshell:dock
layerrule = animation popin 120%, quickshell:screenCorners layerrule = animation popin 120%, match:namespace quickshell:screenCorners
layerrule = noanim, quickshell:lockWindowPusher layerrule = no_anim on, match:namespace quickshell:lockWindowPusher
layerrule = animation fade, quickshell:notificationPopup layerrule = animation fade, match:namespace quickshell:notificationPopup
layerrule = noanim, quickshell:overlay layerrule = no_anim on, match:namespace quickshell:overlay
layerrule = ignorealpha 1, quickshell:overlay layerrule = ignore_alpha 1, match:namespace quickshell:overlay
layerrule = noanim, quickshell:overview layerrule = no_anim on, match:namespace quickshell:overview
layerrule = animation slide bottom, quickshell:osk layerrule = animation slide bottom, match:namespace quickshell:osk
layerrule = noanim, quickshell:polkit layerrule = no_anim on, match:namespace quickshell:polkit
layerrule = xray 0, quickshell:popup # No weird color for bar tooltips (this in theory should suffice) layerrule = xray 0, match:namespace quickshell:popup # No weird color for bar tooltips (this in theory should suffice)
layerrule = ignorealpha 1, quickshell:popup # No weird color for bar tooltips (but somehow this is necessary) layerrule = ignore_alpha 1, match:namespace quickshell:popup # No weird color for bar tooltips (but somehow this is necessary)
layerrule = ignorealpha 1, quickshell:mediaControls # Same as above layerrule = ignore_alpha 1, match:namespace quickshell:mediaControls # Same as above
layerrule = animation slide, quickshell:reloadPopup layerrule = animation slide, match:namespace quickshell:reloadPopup
layerrule = noanim, quickshell:regionSelector layerrule = no_anim on, match:namespace quickshell:regionSelector
layerrule = noanim, quickshell:screenshot layerrule = no_anim on, match:namespace quickshell:screenshot
layerrule = blur, quickshell:session layerrule = blur on, match:namespace quickshell:session
layerrule = noanim, quickshell:session layerrule = no_anim on, match:namespace quickshell:session
layerrule = ignorealpha 0, quickshell:session layerrule = ignore_alpha 0, match:namespace quickshell:session
layerrule = animation slide right, quickshell:sidebarRight layerrule = animation slide right, match:namespace quickshell:sidebarRight
layerrule = animation slide left, quickshell:sidebarLeft layerrule = animation slide left, match:namespace quickshell:sidebarLeft
layerrule = animation slide, quickshell:verticalBar layerrule = animation slide, match:namespace quickshell:verticalBar
layerrule = animation slide top, quickshell:wallpaperSelector layerrule = animation slide top, match:namespace quickshell:wallpaperSelector
layerrule = noanim, quickshell:wOnScreenDisplay layerrule = no_anim on, match:namespace quickshell:wOnScreenDisplay
# Launchers need to be FAST # Launchers need to be FAST
layerrule = noanim, gtk4-layer-shell layerrule = no_anim on, match:namespace gtk4-layer-shell
@@ -29,4 +29,4 @@ plugin {
} }
} }
windowrulev2 = bordercolor rgba({{colors.primary.default.hex_stripped}}AA) rgba({{colors.primary.default.hex_stripped}}77),pinned:1 windowrule = border_color rgba({{colors.primary.default.hex_stripped}}AA) rgba({{colors.primary.default.hex_stripped}}77), match:pin 1