mirror of
https://github.com/end-4/dots-hyprland.git
synced 2026-06-05 14:59:27 -05:00
hyprland: migrate to new windowrule syntax
This commit is contained in:
@@ -31,4 +31,4 @@ plugin {
|
||||
}
|
||||
}
|
||||
|
||||
windowrulev2 = bordercolor rgba(FFB2BCAA) rgba(FFB2BC77),pinned:1
|
||||
windowrule = border_color rgba(FFB2BCAA) rgba(FFB2BC77), match:pin 1
|
||||
|
||||
@@ -1,165 +1,165 @@
|
||||
# ######## Window rules ########
|
||||
|
||||
# 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
|
||||
windowrulev2 = noblur,class:^()$,title:^()$
|
||||
windowrule = no_blur on, match:class ^()$, match:title ^()$
|
||||
# Disable blur for all xwayland apps
|
||||
# windowrulev2 = noblur, xwayland:1
|
||||
# windowrule = no_blur on, match:xwayland 1
|
||||
# Disable blur for every window
|
||||
windowrulev2 = noblur, class:.*
|
||||
windowrule = no_blur on, match:class .*
|
||||
|
||||
# Floating
|
||||
windowrulev2 = center, title:^(Open File)(.*)$
|
||||
windowrulev2 = float, title:^(Open File)(.*)$
|
||||
windowrulev2 = center, title:^(Select a File)(.*)$
|
||||
windowrulev2 = float, title:^(Select a File)(.*)$
|
||||
windowrulev2 = center, title:^(Choose wallpaper)(.*)$
|
||||
windowrulev2 = float, title:^(Choose wallpaper)(.*)$
|
||||
windowrulev2 = size 60% 65%, title:^(Choose wallpaper)(.*)$
|
||||
windowrulev2 = center, title:^(Open Folder)(.*)$
|
||||
windowrulev2 = float, title:^(Open Folder)(.*)$
|
||||
windowrulev2 = center, title:^(Save As)(.*)$
|
||||
windowrulev2 = float, title:^(Save As)(.*)$
|
||||
windowrulev2 = center, title:^(Library)(.*)$
|
||||
windowrulev2 = float, title:^(Library)(.*)$
|
||||
windowrulev2 = center, title:^(File Upload)(.*)$
|
||||
windowrulev2 = float, title:^(File Upload)(.*)$
|
||||
windowrulev2 = center, title:^(.*)(wants to save)$
|
||||
windowrulev2 = float, title:^(.*)(wants to save)$
|
||||
windowrulev2 = center, title:^(.*)(wants to open)$
|
||||
windowrulev2 = float, title:^(.*)(wants to open)$
|
||||
windowrulev2 = float, class:^(blueberry\.py)$
|
||||
windowrulev2 = float, class:^(guifetch)$ # FlafyDev/guifetch
|
||||
windowrulev2 = float, class:^(pavucontrol)$
|
||||
windowrulev2 = size 45%, class:^(pavucontrol)$
|
||||
windowrulev2 = center, class:^(pavucontrol)$
|
||||
windowrulev2 = float, class:^(org.pulseaudio.pavucontrol)$
|
||||
windowrulev2 = size 45%, class:^(org.pulseaudio.pavucontrol)$
|
||||
windowrulev2 = center, class:^(org.pulseaudio.pavucontrol)$
|
||||
windowrulev2 = float, class:^(nm-connection-editor)$
|
||||
windowrulev2 = size 45%, class:^(nm-connection-editor)$
|
||||
windowrulev2 = center, class:^(nm-connection-editor)$
|
||||
windowrulev2 = float, class:.*plasmawindowed.*
|
||||
windowrulev2 = float, class:kcm_.*
|
||||
windowrulev2 = float, class:.*bluedevilwizard
|
||||
windowrulev2 = float, title:.*Welcome
|
||||
windowrulev2 = float, title:^(illogical-impulse Settings)$
|
||||
windowrulev2 = float, title:.*Shell conflicts.*
|
||||
windowrulev2 = float, class:org.freedesktop.impl.portal.desktop.kde
|
||||
windowrulev2 = size 60% 65%, class:org.freedesktop.impl.portal.desktop.kde
|
||||
windowrulev2 = float, class:^(Zotero)$
|
||||
windowrulev2 = size 45%, class:^(Zotero)$
|
||||
windowrule = center on, match:title ^(Open File)(.*)$
|
||||
windowrule = float on, match:title ^(Open File)(.*)$
|
||||
windowrule = center on, match:title ^(Select a File)(.*)$
|
||||
windowrule = float on, match:title ^(Select a File)(.*)$
|
||||
windowrule = center on, match:title ^(Choose wallpaper)(.*)$
|
||||
windowrule = float on, match:title ^(Choose wallpaper)(.*)$
|
||||
windowrule = size 60% 65%, match:title ^(Choose wallpaper)(.*)$
|
||||
windowrule = center on, match:title ^(Open Folder)(.*)$
|
||||
windowrule = float on, match:title ^(Open Folder)(.*)$
|
||||
windowrule = center on, match:title ^(Save As)(.*)$
|
||||
windowrule = float on, match:title ^(Save As)(.*)$
|
||||
windowrule = center on, match:title ^(Library)(.*)$
|
||||
windowrule = float on, match:title ^(Library)(.*)$
|
||||
windowrule = center on, match:title ^(File Upload)(.*)$
|
||||
windowrule = float on, match:title ^(File Upload)(.*)$
|
||||
windowrule = center on, match:title ^(.*)(wants to save)$
|
||||
windowrule = float on, match:title ^(.*)(wants to save)$
|
||||
windowrule = center on, match:title ^(.*)(wants to open)$
|
||||
windowrule = float on, match:title ^(.*)(wants to open)$
|
||||
windowrule = float on, match:class ^(blueberry\.py)$
|
||||
windowrule = float on, match:class ^(guifetch)$ # FlafyDev/guifetch
|
||||
windowrule = float on, match:class ^(pavucontrol)$
|
||||
windowrule = size 45%, match:class ^(pavucontrol)$
|
||||
windowrule = center on, match:class ^(pavucontrol)$
|
||||
windowrule = float on, match:class ^(org.pulseaudio.pavucontrol)$
|
||||
windowrule = size 45%, match:class ^(org.pulseaudio.pavucontrol)$
|
||||
windowrule = center on, match:class ^(org.pulseaudio.pavucontrol)$
|
||||
windowrule = float on, match:class ^(nm-connection-editor)$
|
||||
windowrule = size 45%, match:class ^(nm-connection-editor)$
|
||||
windowrule = center on, match:class ^(nm-connection-editor)$
|
||||
windowrule = float on, match:class .*plasmawindowed.*
|
||||
windowrule = float on, match:class kcm_.*
|
||||
windowrule = float on, match:class .*bluedevilwizard
|
||||
windowrule = float on, match:title .*Welcome
|
||||
windowrule = float on, match:title ^(illogical-impulse Settings)$
|
||||
windowrule = float on, match:title .*Shell conflicts.*
|
||||
windowrule = float on, match:class org.freedesktop.impl.portal.desktop.kde
|
||||
windowrule = size 60% 65%, match:class org.freedesktop.impl.portal.desktop.kde
|
||||
windowrule = float on, match:class ^(Zotero)$
|
||||
windowrule = size 45%, match:class ^(Zotero)$
|
||||
|
||||
# Move
|
||||
# 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)$
|
||||
windowrulev2 = noinitialfocus, class:^(plasma-changeicons)$
|
||||
windowrulev2 = move 999999 999999, class:^(plasma-changeicons)$
|
||||
windowrule = float on, match:class ^(plasma-changeicons)$
|
||||
windowrule = no_initial_focus on, match:class ^(plasma-changeicons)$
|
||||
windowrule = move 999999 999999, match:class ^(plasma-changeicons)$
|
||||
# stupid dolphin copy
|
||||
windowrulev2 = move 40 80, title:^(Copying — Dolphin)$
|
||||
windowrule = move 40 80, match:title ^(Copying — Dolphin)$
|
||||
|
||||
# Tiling
|
||||
windowrulev2 = tile, class:^dev\.warp\.Warp$
|
||||
windowrule = tile on, match:class ^dev\.warp\.Warp$
|
||||
|
||||
# Picture-in-Picture
|
||||
windowrulev2 = float, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
windowrulev2 = keepaspectratio, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
windowrulev2 = move 73% 72%, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
windowrulev2 = size 25%, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
windowrulev2 = float, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
windowrulev2 = pin, title:^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
windowrule = float on, match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
windowrule = keep_aspect_ratio on, match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
windowrule = move 73% 72%, match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
windowrule = size 25%, match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
windowrule = float on, match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
windowrule = pin on, match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
|
||||
# --- Tearing ---
|
||||
windowrulev2 = immediate, title:.*\.exe
|
||||
windowrulev2 = immediate, title:.*minecraft.*
|
||||
windowrulev2 = immediate, class:^(steam_app).*
|
||||
windowrule = immediate on, match:title .*\.exe
|
||||
windowrule = immediate on, match:title .*minecraft.*
|
||||
windowrule = immediate on, match:class ^(steam_app).*
|
||||
|
||||
# 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).
|
||||
windowrulev2 = noshadow, floating:0
|
||||
windowrule = no_shadow on, match:float 0
|
||||
|
||||
# ######## Workspace rules ########
|
||||
workspace = special:special, gapsout:30
|
||||
|
||||
# ######## Layer rules ########
|
||||
layerrule = xray 1, .*
|
||||
# layerrule = noanim, .*
|
||||
layerrule = noanim, walker
|
||||
layerrule = noanim, selection
|
||||
layerrule = noanim, overview
|
||||
layerrule = noanim, anyrun
|
||||
layerrule = noanim, indicator.*
|
||||
layerrule = noanim, osk
|
||||
layerrule = noanim, hyprpicker
|
||||
layerrule = xray 1, match:namespace .*
|
||||
# layerrule = no_anim on, .*
|
||||
layerrule = no_anim on, match:namespace walker
|
||||
layerrule = no_anim on, match:namespace selection
|
||||
layerrule = no_anim on, match:namespace overview
|
||||
layerrule = no_anim on, match:namespace anyrun
|
||||
layerrule = no_anim on, match:namespace indicator.*
|
||||
layerrule = no_anim on, match:namespace osk
|
||||
layerrule = no_anim on, match:namespace hyprpicker
|
||||
|
||||
layerrule = noanim, noanim
|
||||
layerrule = blur, gtk-layer-shell
|
||||
layerrule = ignorezero, gtk-layer-shell
|
||||
layerrule = blur, launcher
|
||||
layerrule = ignorealpha 0.5, launcher
|
||||
layerrule = blur, notifications
|
||||
layerrule = ignorealpha 0.69, notifications
|
||||
layerrule = blur, logout_dialog # wlogout
|
||||
layerrule = no_anim on, match:namespace no_anim on
|
||||
layerrule = blur on, match:namespace gtk-layer-shell
|
||||
layerrule = ignore_alpha 0, match:namespace gtk-layer-shell
|
||||
layerrule = blur on, match:namespace launcher
|
||||
layerrule = ignore_alpha 0.5, match:namespace launcher
|
||||
layerrule = blur on, match:namespace notifications
|
||||
layerrule = ignore_alpha 0.69, match:namespace notifications
|
||||
layerrule = blur on, match:namespace logout_dialog # wlogout
|
||||
|
||||
# ags
|
||||
layerrule = animation slide left, sideleft.*
|
||||
layerrule = animation slide right, sideright.*
|
||||
layerrule = blur, session[0-9]*
|
||||
layerrule = blur, bar[0-9]*
|
||||
layerrule = ignorealpha 0.6, bar[0-9]*
|
||||
layerrule = blur, barcorner.*
|
||||
layerrule = ignorealpha 0.6, barcorner.*
|
||||
layerrule = blur, dock[0-9]*
|
||||
layerrule = ignorealpha 0.6, dock[0-9]*
|
||||
layerrule = blur, indicator.*
|
||||
layerrule = ignorealpha 0.6, indicator.*
|
||||
layerrule = blur, overview[0-9]*
|
||||
layerrule = ignorealpha 0.6, overview[0-9]*
|
||||
layerrule = blur, cheatsheet[0-9]*
|
||||
layerrule = ignorealpha 0.6, cheatsheet[0-9]*
|
||||
layerrule = blur, sideright[0-9]*
|
||||
layerrule = ignorealpha 0.6, sideright[0-9]*
|
||||
layerrule = blur, sideleft[0-9]*
|
||||
layerrule = ignorealpha 0.6, sideleft[0-9]*
|
||||
layerrule = blur, indicator.*
|
||||
layerrule = ignorealpha 0.6, indicator.*
|
||||
layerrule = blur, osk[0-9]*
|
||||
layerrule = ignorealpha 0.6, osk[0-9]*
|
||||
layerrule = animation slide left, match:namespace sideleft.*
|
||||
layerrule = animation slide right, match:namespace sideright.*
|
||||
layerrule = blur on, match:namespace session[0-9]*
|
||||
layerrule = blur on, match:namespace bar[0-9]*
|
||||
layerrule = ignore_alpha 0.6, match:namespace bar[0-9]*
|
||||
layerrule = blur on, match:namespace barcorner.*
|
||||
layerrule = ignore_alpha 0.6, match:namespace barcorner.*
|
||||
layerrule = blur on, match:namespace dock[0-9]*
|
||||
layerrule = ignore_alpha 0.6, match:namespace dock[0-9]*
|
||||
layerrule = blur on, match:namespace indicator.*
|
||||
layerrule = ignore_alpha 0.6, match:namespace indicator.*
|
||||
layerrule = blur on, match:namespace overview[0-9]*
|
||||
layerrule = ignore_alpha 0.6, match:namespace overview[0-9]*
|
||||
layerrule = blur on, match:namespace cheatsheet[0-9]*
|
||||
layerrule = ignore_alpha 0.6, match:namespace cheatsheet[0-9]*
|
||||
layerrule = blur on, match:namespace sideright[0-9]*
|
||||
layerrule = ignore_alpha 0.6, match:namespace sideright[0-9]*
|
||||
layerrule = blur on, match:namespace sideleft[0-9]*
|
||||
layerrule = ignore_alpha 0.6, match:namespace sideleft[0-9]*
|
||||
layerrule = blur on, match:namespace indicator.*
|
||||
layerrule = ignore_alpha 0.6, match:namespace indicator.*
|
||||
layerrule = blur on, match:namespace osk[0-9]*
|
||||
layerrule = ignore_alpha 0.6, match:namespace osk[0-9]*
|
||||
|
||||
# Quickshell
|
||||
layerrule = blurpopups, quickshell:.*
|
||||
layerrule = blur, quickshell:.*
|
||||
layerrule = ignorealpha 0.79, quickshell:.*
|
||||
layerrule = animation slide, quickshell:bar
|
||||
layerrule = noanim, quickshell:actionCenter
|
||||
layerrule = animation slide bottom, quickshell:cheatsheet
|
||||
layerrule = animation slide bottom, quickshell:dock
|
||||
layerrule = animation popin 120%, quickshell:screenCorners
|
||||
layerrule = noanim, quickshell:lockWindowPusher
|
||||
layerrule = animation fade, quickshell:notificationPopup
|
||||
layerrule = noanim, quickshell:overlay
|
||||
layerrule = ignorealpha 1, quickshell:overlay
|
||||
layerrule = noanim, quickshell:overview
|
||||
layerrule = animation slide bottom, quickshell:osk
|
||||
layerrule = noanim, quickshell:polkit
|
||||
layerrule = xray 0, 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 = ignorealpha 1, quickshell:mediaControls # Same as above
|
||||
layerrule = animation slide, quickshell:reloadPopup
|
||||
layerrule = noanim, quickshell:regionSelector
|
||||
layerrule = noanim, quickshell:screenshot
|
||||
layerrule = blur, quickshell:session
|
||||
layerrule = noanim, quickshell:session
|
||||
layerrule = ignorealpha 0, quickshell:session
|
||||
layerrule = animation slide right, quickshell:sidebarRight
|
||||
layerrule = animation slide left, quickshell:sidebarLeft
|
||||
layerrule = animation slide, quickshell:verticalBar
|
||||
layerrule = animation slide top, quickshell:wallpaperSelector
|
||||
layerrule = noanim, quickshell:wOnScreenDisplay
|
||||
layerrule = blur_popups on, match:namespace quickshell:.*
|
||||
layerrule = blur on, match:namespace quickshell:.*
|
||||
layerrule = ignore_alpha 0.79, match:namespace quickshell:.*
|
||||
layerrule = animation slide, match:namespace quickshell:bar
|
||||
layerrule = no_anim on, match:namespace quickshell:actionCenter
|
||||
layerrule = animation slide bottom, match:namespace quickshell:cheatsheet
|
||||
layerrule = animation slide bottom, match:namespace quickshell:dock
|
||||
layerrule = animation popin 120%, match:namespace quickshell:screenCorners
|
||||
layerrule = no_anim on, match:namespace quickshell:lockWindowPusher
|
||||
layerrule = animation fade, match:namespace quickshell:notificationPopup
|
||||
layerrule = no_anim on, match:namespace quickshell:overlay
|
||||
layerrule = ignore_alpha 1, match:namespace quickshell:overlay
|
||||
layerrule = no_anim on, match:namespace quickshell:overview
|
||||
layerrule = animation slide bottom, match:namespace quickshell:osk
|
||||
layerrule = no_anim on, match:namespace quickshell:polkit
|
||||
layerrule = xray 0, match:namespace quickshell:popup # No weird color for bar tooltips (this in theory should suffice)
|
||||
layerrule = ignore_alpha 1, match:namespace quickshell:popup # No weird color for bar tooltips (but somehow this is necessary)
|
||||
layerrule = ignore_alpha 1, match:namespace quickshell:mediaControls # Same as above
|
||||
layerrule = animation slide, match:namespace quickshell:reloadPopup
|
||||
layerrule = no_anim on, match:namespace quickshell:regionSelector
|
||||
layerrule = no_anim on, match:namespace quickshell:screenshot
|
||||
layerrule = blur on, match:namespace quickshell:session
|
||||
layerrule = no_anim on, match:namespace quickshell:session
|
||||
layerrule = ignore_alpha 0, match:namespace quickshell:session
|
||||
layerrule = animation slide right, match:namespace quickshell:sidebarRight
|
||||
layerrule = animation slide left, match:namespace quickshell:sidebarLeft
|
||||
layerrule = animation slide, match:namespace quickshell:verticalBar
|
||||
layerrule = animation slide top, match:namespace quickshell:wallpaperSelector
|
||||
layerrule = no_anim on, match:namespace quickshell:wOnScreenDisplay
|
||||
|
||||
# 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
|
||||
|
||||
Reference in New Issue
Block a user