swaywm/swayidle

inhibit_idle ignored on Fedora 32 with sway 1.4

dekimir opened this issue · 1 comments

I just started using sway and swayidle, my apologies if this is the wrong repo or issue format. With X11 and i3, dpms worked exactly the way I want, without any customization: it would turn screen off after a period of idleness, but never when Netflix was playing. After transitioning to sway, I'm having trouble configuring the same behaviour.

I run swayidle to turn dpms off after a timeout, but I configured inhibit_idle on fullscreen. Unfortunately, swayidle turns dpms off even when a window is in fullscreen.

Here are the details captured right after one such occurrence:

Fedora 32 - x86_64 - Updates                                                       895 kB/s | 1.5 MB     00:01    
Last metadata expiration check: 0:00:01 ago on Fri 22 May 2020 12:50:52 PM.
Installed Packages
sway.x86_64                                             1.4-4.fc32                                         @updates
swaybg.x86_64                                           1.0-3.fc32                                         @fedora 
swayidle.x86_64                                         1.6-2.fc32                                         @fedora 
localhost>ps -l `pgrep swayid`|cat
F S   UID     PID    PPID  C PRI  NI ADDR SZ WCHAN  TTY        TIME CMD
0 S  1000   48455       1  0  80   0 -  1630 -      ?          0:00 swayidle timeout 120 swaymsg "output * dpms off" resume swaymsg "output * dpms on"
localhost>swaymsg -t get_tree|grep fullscreen
               "fullscreen_mode": 0,
               "fullscreen_mode": 1,
               "fullscreen_mode": 0,
               "name": "Inhibit idle while a fullscreen app is running? : swaywm - Mozilla Firefox",
               "fullscreen_mode": 0,
                 "title": "Inhibit idle while a fullscreen app is running? : swaywm - Mozilla Firefox",
localhost>swaymsg -t get_config 
<snip>
for_window [class=".*"] inhibit_idle fullscreen
for_window [app_id=".*"] inhibit_idle fullscreen
exec_always --no-startup-id swayidle timeout 120 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' &
localhost>ps x|grep wayland
  29076 tty2     Ssl+   0:00 /usr/libexec/gdm-wayland-session --register-session sway
  29125 tty2     Sl+   12:07 Xwayland :0 -rootless -terminate -listen 22 -listen 23 -wm 49
  48966 pts/1    S+     0:00 grep wayland

Hm, after logging out and back in, swayidle works exactly as desired/configured. Closing...