## Base Rules
$center-float-large = class:^(center-float-large)$|^(Geeqie)$|^(.*celluloid.*)$
windowrulev2 = float, $center-float-large
windowrulev2 = size 70% 70%, $center-float-large
windowrulev2 = center 1, $center-float-large

$center-float = class:^(center-float)$|^(.*file-roller.*)$
windowrulev2 = float, $center-float
windowrulev2 = size 50% 50%, $center-float
windowrulev2 = center 1, $center-float

$center-float-mini = class:^(center-float-mini)$|^(.*galculator.*)$|^(.*ytdlp-gui.*)$
windowrulev2 = float, $center-float-mini
windowrulev2 = size 30% 40%, $center-float-mini
windowrulev2 = center 1, $center-float-mini


## Float Rules
windowrule = float, xfce-polkit|wleave|title:Open File|title:Open Folder|title:branchdialog|nwg-look|nm-connection-editor


## Workspace Rules
# System
windowrulev2 = workspace 9, class:^(.*virt-manager.*)$|(.*PikaBackup.*)$
windowrulev2 = workspace 19, class:^(.*GParted.*)$|(.*clamtk.*)$|(.*gnome.Logs.*)$

# Gaming
windowrulev2 = workspace 8, class:^(.*steam_app.*)$
windowrulev2 = immediate, class:^(.*steam_app.*)$

windowrulev2 = workspace 18, class:^(steam)$|(.*atlauncher.*)$|(.*heroic.*)$
windowrulev2 = stayfocused, title:^()$,class:^(steam)$ # This fixes steam layers dissapearing
windowrulev2 = minsize 1 1, title:^()$,class:^(steam)$
windowrulev2 = workspace 8, class:^(.*Ryujinx.*)$|(.*cemu.*)$|(.*dolphin.*)$|(.*RetroArch.*)$|(.*xemu.*)$|(.*duckstation.*)$|(.*rpcs3.*)$

# Media
windowrulev2 = workspace 23 silent, class:^(.*thunderbird.*)$
windowrulev2 = workspace 24 silent, class:^(.*btop.*)$
windowrulev2 = workspace 24 silent, class:^(.*nvtop.*)$
windowrulev2 = workspace 21 silent, class:^(.*Spotify.*)$
windowrulev2 = workspace 22 silent, class:^(.*discord.*)$
windowrulev2 = workspace 17, class:^(.*obsproject.*)$
windowrulev2 = workspace 16, class:^(.*easyeffects.*)$|^(.*qpwgraph.*)$
windowrulev2 = workspace 6, class:^(.*vital.*)$|(.*fl64.*)$
windowrulev2 = workspace 5, class:^(.*pinta.*)$|(.*krita.*)$|(.*blender.*)$|(.*Upscayl.*)$

# Productivity/Dev
windowrulev2 = workspace 10, class:^(.*obsidian.*)$
windowrulev2 = workspace 2, class:^(.*Code.*)$


## Scratchpads
$scratchpad = class:^(scratchpad)$
windowrulev2 = float, $scratchpad
windowrulev2 = center 1, $scratchpad
windowrulev2 = size 70% 70%, $scratchpad
windowrulev2 = workspace special:scratchpad silent, $scratchpad

$sideScratchpad = class:^(.*pavucontrol.*)$|(.*blueman-manager.*)$ #|^(.*localsend.*)$
windowrulev2 = workspace special:sideScratchpad silent, $sideScratchpad
windowrulev2 = size 30% 90%, $sideScratchpad
windowrulev2 = float, $sideScratchpad
windowrulev2 = center 1, $sideScratchpad


## Specific App Rules
$videobridge = class:^(.*xwaylandvideobridge.*)$
windowrulev2 = opacity 0.0 override 0.0 override, $videobridge
windowrulev2 = noanim, $videobridge
windowrulev2 = nofocus, $videobridge
windowrulev2 = noinitialfocus, $videobridge

$zathura = class:^(.*zathura.*)$
windowrulev2 = float, $zathura
windowrulev2 = size 35% 90%, $zathura 
windowrulev2 = center 1, $zathura

$scrcpy = class:^(.*scrcpy.*)$
windowrulev2 = center 1, $scrcpy
windowrulev2 = float, $scrcpy

windowrulev2 = noinitialfocus, class:(.*Spotify.*)

windowrulev2 = idleinhibit always, class:^(.*steam_app.*)$
windowrulev2 = idleinhibit fullscreen, class:^(.*celluloid.*)$
windowrulev2 = idleinhibit fullscreen, class:^(.*LibreWolf.*)$
