2026-08-07 13:42:35 -06:00
-- #Blanket Rule to avoid screenlock if an app is fullscreen
2026-08-08 20:29:22 -06:00
hl.window_rule ( {
match = fullscreen , true ,
idle_inhibit = on
} )
-- Blanket Rule for pop-up Dialog windows
hl.window_rule ( {
match = modal , true ,
center = true ,
float = true
} )
2026-08-07 13:42:35 -06:00
hl.window_rule ( {
name = " Cava_Rules " ,
match = {
class = " ^(kitty-bg)$ " ,
} ,
opacity = " 1.0 " ,
float = true ,
workspace = 10 ,
2026-08-08 20:29:22 -06:00
fullscreen = true
2026-08-07 13:42:35 -06:00
} )
hl.window_rule ( {
name = " Rofi_Rules " ,
match = {
class = " ^(Rofi)$ " ,
} ,
float = true
} )
hl.window_rule ( {
name = " POLKIT_Rules " ,
match = {
class = " ^(org.kde.polkit-kde-authentication-agent-1)$ "
} ,
2026-08-08 20:29:22 -06:00
float = true ,
2026-08-07 13:42:35 -06:00
opacity = 1
} )
hl.window_rule ( {
name = " Hyprland_Picker_Rules " ,
match = {
class = " ^(hyprland-share-picker)$ " ,
} ,
2026-08-08 20:29:22 -06:00
float = true ,
2026-08-07 13:42:35 -06:00
size = { 400 , 250 } ,
2026-08-08 20:29:22 -06:00
center = true
2026-08-07 13:42:35 -06:00
} )
hl.window_rule ( {
name = " Discord_Rules " ,
match = {
class = " ^(vesktop||vesktop-bin|discord)$ " ,
} ,
opaque = true ,
2026-08-08 20:29:22 -06:00
no_initial_focus = true ,
2026-08-07 13:42:35 -06:00
workspace = 14 ,
2026-08-08 20:29:22 -06:00
fullscreen = true
2026-08-07 13:42:35 -06:00
} )
hl.window_rule ( {
name = " Browser_Rules " ,
match = {
class = " ^(LibreWolf)$ " ,
} ,
workspace = 3 ,
idle_inhibit = fullscreen ,
2026-08-08 20:29:22 -06:00
fullscreen = true
2026-08-07 13:42:35 -06:00
} )
hl.window_rule ( {
name = " Special_Rules " ,
match = {
class = " ^(URxvt|kitty|com.mitchellh.ghostty)$ " ,
} ,
2026-08-07 13:47:57 -06:00
workspace = " special:term " ,
2026-08-08 20:29:22 -06:00
float = true ,
2026-08-07 13:42:35 -06:00
size = { 1520 , 800 } ,
2026-08-08 20:29:22 -06:00
center = true
2026-08-07 13:42:35 -06:00
} )
2026-08-08 20:29:22 -06:00
hl.window_rule ( {
name = " FragPunk Game " , -- Game not receiving mouse input
match = {
title = " ^(FragPunk)$ " ,
} ,
-- allows_input = true,
--no_max_size = true,
float = off ,
center = off ,
--size = "1920, 1080",
fullscreen = true ,
stay_focused = true
} )
2026-08-07 13:42:35 -06:00
hl.window_rule ( {
name = " Minecraft " ,
match = {
class = " ^(Minecraft)$ " ,
} ,
2026-08-08 20:29:22 -06:00
allows_input = true ,
stay_focused = true
2026-08-07 13:42:35 -06:00
} )
hl.window_rule ( {
name = " Ark Ascended " ,
match = {
class = " ^(steam_app_2399830)$ " ,
} ,
2026-08-08 20:29:22 -06:00
fullscreen = false ,
2026-08-07 13:42:35 -06:00
workspace = 2 ,
2026-08-08 20:29:22 -06:00
stay_focused = true
2026-08-07 13:42:35 -06:00
} )
hl.window_rule ( {
name = " Steam Window " ,
match = {
class = " ^(steam)$ " ,
} ,
2026-08-08 20:29:22 -06:00
float = true ,
center = true ,
2026-08-07 13:42:35 -06:00
workspace = 1
} )
-- #RULE VALE DEFINITION
2026-08-08 20:29:22 -06:00
-- #allows_input [true] Forces an XWayland window to receive input, even if it requests not to do so. (Might fix issues like Game Launchers not receiving focus for some reason)
2026-08-07 13:42:35 -06:00
-- #####