Files
dotfiles/hypr/.config/hypr/modules/windows_and_workspaces.lua
T

116 lines
2.1 KiB
Lua

-- See https://wiki.hypr.land/Configuring/Window-Rules/ for more
-- See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules
-- Example windowrules that are useful
-- Ignore maximize requests from all apps. You'll probably like this.
hl.window_rule({
name = "suppress-maximize-events",
match = {
class = ".*",
},
suppress_event = "maximize",
})
-- Fix some dragging issues with XWayland
hl.window_rule({
name = "fix-xwayland-drags",
match = {
class = "^$",
title = "^$",
xwayland = true,
float = true,
fullscreen = false,
pin = false,
},
no_focus = true,
})
-- Hyprland-run windowrule
hl.config({
decoration = {
blur = {
size = 8,
passes = 2,
},
},
})
hl.window_rule({
name = "move-hyprland-run",
match = {
class = "hyprland-run",
},
move = "20 monitor_h-120",
float = true,
})
hl.window_rule({
name = "keybinds-float",
match = {
class = "keybinds",
},
float = true,
size = "900 700",
center = true,
dim_around = true,
})
hl.window_rule({
name = "opacity-kitty-dolphin",
match = {
class = ".*(kitty|dolphin).*",
},
opacity = "0.90 0.80",
})
hl.window_rule({
match = {
class = ".*keybinds.*",
},
opacity = "0.75 0.50",
})
-- Noctalia shell surfaces: blur bars/panels/dock/notifications and let
-- Noctalia run its own animations (no Hyprland layer animation on top).
hl.layer_rule({
name = "noctalia",
match = {
namespace = "^noctalia-(bar-.+|notification|dock|panel|attached-panel|osd|window-switcher)$",
},
no_anim = true,
ignore_alpha = 0.5,
blur = true,
blur_popups = true,
})
hl.layer_rule({
name = "caelestia",
match = {
namespace = "^caelestia-.*$",
},
no_anim = true,
ignore_alpha = 0.5,
blur = true,
blur_popups = true,
})
hl.window_rule({
name = "noctalia-settings",
match = {
class = "dev.noctalia.Noctalia",
},
float = true,
size = "1080 920",
})
hl.window_rule({
name = "no-rounding-fullscreen",
match = {
fullscreen = 1,
},
rounding = 0,
border_size = 0,
})
hl.window_rule({
name = "floating-windows",
float = true,
match = { class = "(imv|.*hyprmod|.*[Bb]itwarden.*|ktouch)" },
size = "1080 920",
})