So both Sway and Hyprland now support Waylands’ tearing protocol. I was wondering whether it is possible to create window rules for these WMs that allow tearing in all games launched via Steam. Something like: For Sway for_window [class=“steam_app_*”] allow_tearing yes
and for Hyprland windowrulev2 = immediate, class:^(steam_app_*)$
Does anybody know whether something like this would work? You know, instead of having to create an entry for every single game.
Edit: As mranderson17 said, allow tearing isn’t in the latest release versions of Sway or Hyprland at the time of writing.
Edit2: mranderson17 gave what could possibly be the right answer:
For Sway for_window [class=“steam_app_.*”] allow_tearing yes
For Hyprland (maybe) windowrulev2 = immediate, class:^(steam_app_.*)$
I haven’t tested it yet. But unless you think he’s wrong give him your “thumbs up”.
Ah, I should have been more clear. The
CRITERIA
section of the sway documentation states that class matches support regex, so instead of using a*
as you did in your example you’d use a regex any.*
. So I think (untested of course) thatfor_window [class="steam_app_.*"] allow_tearing yes
should work.The comment in the code for allow_tearing notes that it must be enabled on the output as well. Here is the relevant output documentation. There are several other notes/recommendations there as well you should probably pay attention to.
Thank you, I will add this to my Sway config (and change it for Hyprland as well).