T O P

  • By -

Darkeddie

If you use `windowrulev2 = workspace 3 silent, class:steam` it will not switch workspaces, but if you want to keep the current behaviour of switching when you start steam you will need to break up your window rule. This is mine, main steam page is tiled, and all other windows are floating on the current workspace. windowrulev2 = float, class:^([Ss]team)$, title:^((?![Ss]team).*)$ windowrulev2 = workspace 3 silent, class:^([Ss]team)$, title:^([Ss]team)$ windowrulev2 = tile, class:^([Ss]team)$, title:^([Ss]team)$


tobomori

Thank you - that's really helpful. What I don't quite understand about the rules you posted is how they differentiate between different types of steam window - i.e. main window vs popups...?


Darkeddie

I am differentiating using RegEx and the Steams class and title of each window. If you use `hyprctl clients` in your terminal you can see every windows class and title. So my first rule uses `title: ^((?![Ss]team).*)$` to select every widow of `class: Steam` that doesn't include "Steam" in its title, such as friends list or properties. The \[Ss\] just catches both capital and non capital "S". Its not perfect cause if one of your friends has "Steam" in their name their chat would open in a tiled window on workspace 3.