https://bugs.kde.org/show_bug.cgi?id=479195

Eevee <eevee.kdeb...@veekun.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|WAITINGFORINFO              |---
             Status|NEEDSINFO                   |REPORTED

--- Comment #2 from Eevee <eevee.kdeb...@veekun.com> ---
That's, uh, odd.

I tried the following:

- run `xinput test 9` in one terminal
- run `love` in another terminal (no game loaded, just an SDL window, so, about
as small a test as I can get without building something)
- run `sleep 10; xset dpms force suspend` in a third terminal
- quickly lock the screen and sit back

My screen reliably turns off, then back on.  I don't see anything that looks
like spurious keyboard input.

Poring over source code, LÖVE simply calls SDL_DisableScreenSaver(), which is
implemented here for X:
https://github.com/libsdl-org/SDL/blob/12245e4c756eb964ecdf4a528c36aab6f971baf5/src/video/x11/SDL_x11events.c#L2023

If built with dbus support, which seems to be the default, then it appears to
use the freedesktop interface:
https://github.com/libsdl-org/SDL/blob/main/src/core/linux/SDL_dbus.c#L428
Otherwise it falls back to XScreenSaverSuspend, which looks like it's supposed
to be called on a timer.

VLC also has two implementations: one that shells out to `xdg-screensaver
reset`:
https://github.com/videolan/vlc/blob/f7bb59d9f51cc10b25ff86d34a3eff744e60c46e/modules/misc/inhibit/xdg.c#L33
And one using dbus, which at a glance is at least somewhat similar to the SDL
implementation:
https://github.com/videolan/vlc/blob/f7bb59d9f51cc10b25ff86d34a3eff744e60c46e/modules/misc/inhibit/dbus.c#L239

So I have no idea what's going on here.  Both applications seem to do the
correct thing: try DBus, and if that doesn't work, fall back to an X interface.
 If KDE's power management works as you describe then I'd expect both
approaches to have the same results?

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to