$mainMod = SUPER

# ────────────────────────────────────────────────────────────────────
#          ╭────────────────────────────────────────────────╮
#          │                  WINDOW RULES                  │
#          ╰────────────────────────────────────────────────╯
# ────────────────────────────────────────────────────────────────────
windowrule = move 1450 50, match:title (.*)Power menu$
windowrule = workspace 2, match:class evince
windowrule = workspace 2, match:title .*Okular.*
windowrule = workspace 2, match:class org.pwmt.zathura
windowrule = fullscreen on, match:title wlogout
windowrule = workspace 2, match:class librewolf
windowrule = workspace 2, match:title LibreWolf
windowrule = workspace 2, match:title BSManager
windowrule = workspace 1, match:title ALVR(.*)
windowrule = workspace 2, match:title (.*)Beat Saber(.*)
windowrule = fullscreen on, match:title (.*)Beat Saber(.*)
windowrule = workspace 2, match:title (.*)Discord(.*)
windowrule = workspace 3, match:title ^(Steam)(.*)$
windowrule = workspace 1, match:title (.*)(VSCodium)$
windowrule = center on, match:title ^(.*)(VSCodium)$
windowrule = workspace 3, match:class minecraft-launcher
windowrule = tile on, match:class minecraft-launcher
windowrule = fullscreen on, match:title ^(.*)(Minecraft)(.*)$
windowrule = workspace 3, match:title ^(.*)(Minecraft)(.*)$

windowrule = workspace 1, match:title ^(.*)hidden-terminator*(.*)$
windowrule = size 0 0, match:title ^(.*)hidden-terminator*(.*)$
windowrule = move 0 0, match:title ^(.*)hidden-terminator*(.*)$
windowrule = float on, match:title ^(.*)hidden-terminator*(.*)$

# ┌                                                ┐
# │          Set rule for yazi filepicker          │
# └                                                ┘
windowrule = float on, match:title ^(.*)termfilechooser*(.*)$
windowrule = size 1400 800, match:title ^(.*)termfilechooser*(.*)$
windowrule = center on, match:title ^(.*)termfilechooser*(.*)$
windowrule = dim_around on, match:title ^(.*)termfilechooser*(.*)$

# ┌                                                ┐
# │ Set floating windows & position them centered  │
# └                                                ┘
windowrule = float on, match:class file_progress
windowrule = center on, match:class file_progress

windowrule = float on, match:class confirm
windowrule = center on, match:class confirm

windowrule = float on, match:class dialog
windowrule = center on, match:class dialog

windowrule = float on, match:class download
windowrule = center on, match:class download

windowrule = float on, match:class notification
windowrule = center on, match:class notification

windowrule = float on, match:class error
windowrule = center on, match:class error

windowrule = float on, match:class splash
windowrule = center on, match:class splash

windowrule = float on, match:class confirmreset
windowrule = center on, match:class confirmreset

windowrule = float on, match:title Open File
windowrule = center on, match:title Open File

windowrule = float on, match:title branchdialog
windowrule = center on, match:title branchdialog

windowrule = float on, match:class Lxappearance
windowrule = center on, match:class Lxappearance

windowrule = float on, match:title ^(Media viewer)$
windowrule = center on, match:title ^(Media viewer)$

windowrule = float on, match:title ^(Volume Control)$
windowrule = center on, match:title ^(Volume Control)$

windowrule = float on, match:title ^(Picture-in-Picture)$
windowrule = center on, match:title ^(Picture-in-Picture)$

windowrule = float on, match:title ^(File Operation Progress)$
windowrule = center on, match:title ^(File Operation Progress)$

windowrule = float on, match:title ^(Loading)(.*)$
windowrule = center on, match:title ^(Loading)(.*)$

windowrule = float on, match:class pavucontrol-qt
windowrule = center on, match:class pavucontrol-qt

windowrule = float on, match:class pavucontrol
windowrule = center on, match:class pavucontrol

windowrule = float on, match:class file-roller
windowrule = center on, match:class file-roller

# idleinhibit
windowrule = idle_inhibit focus, match:title ^(Rocket League)(.*)$
windowrule = fullscreen on, match:title ^(Steam Big Picture)$
windowrule = idle_inhibit always, match:class steam
windowrule = idle_inhibit always, match:class lutris
windowrule = idle_inhibit focus, match:class vlc
windowrule = idle_inhibit focus, match:class supertuxkart
windowrule = idle_inhibit fullscreen, match:title ^(.*)(Discord)(.*)$
windowrule = idle_inhibit fullscreen, match:title ^(.*)(~)(.*)$

# Do not screenshare bitwarden windows
windowrule = no_screen_share on, match:title (.*)(Bitwarden)(.*)
windowrule = no_screen_share on, match:class nm-connection-editor
windowrule = no_screen_share on, match:title (.*)(secret)(.*)
windowrule = no_screen_share on, match:class (.*)[aA]uthentication(.*)


# ┌                                                ┐
# │                  Layer rules                   │
# └                                                ┘
layerrule = dim_around on, match:namespace rofi
