Files
illogical-impulse/dots/.config/hypr/hyprland/rules.conf
T
2025-11-24 23:25:39 +00:00

166 lines
8.3 KiB
Plaintext

# ######## Window rules ########
# Uncomment to apply global transparency to all windows:
# windowrule = opacity 0.89 override 0.89 override, match:class .*
# Disable blur for xwayland context menus
windowrule = no_blur on, match:class ^()$, match:title ^()$
# Disable blur for all xwayland apps
# windowrule = no_blur on, match:xwayland 1
# Disable blur for every window
windowrule = no_blur on, match:class .*
# Floating
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.
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
windowrule = move 40 80, match:title ^(Copying — Dolphin)$
# Tiling
windowrule = tile on, match:class ^dev\.warp\.Warp$
# Picture-in-Picture
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 ---
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
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).
windowrule = no_shadow on, match:float 0
# ######## Workspace rules ########
workspace = special:special, gapsout:30
# ######## Layer rules ########
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 = 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, 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 = 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 = no_anim on, match:namespace gtk4-layer-shell