[Bug 34793] spice client doesn't inhibit screensaver properly

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu Mar 29 05:53:43 PDT 2012


https://bugs.freedesktop.org/show_bug.cgi?id=34793

--- Comment #1 from Hans de Goede <jwrdegoede at fedoraproject.org> 2012-03-29 05:53:43 PDT ---
IAfter discussing this a bit on irc today I've been looking into a potential
fix for this. A big problem here seems to be that the fix will likely be
desktop environment specific.

There are 2 different solutions:
1) inhibit the screensaver when we've grabbed the keyboard
2) release the keyboard grab when the screensaver wants it.

1) Makes the most sense to do when fullscreen, whereas 2) makes more sense when
running windowed.

Both 1 and 2 require interacting with the screensaver, Gnome has its own
org.gnome.ScreenSaver dbus interface, which KDE more or less mirrors as
org.freedesktop.ScreenSaver. I've not further investigated the KDE
implementation, see here for the gnome interface:
http://people.gnome.org/~mccann/gnome-screensaver/docs/gnome-screensaver.html

Unfortunately at least for the Gnome implementation the "ActiveChanged" signal
gets emitted after the
screensaver has grabbed the keyboard, so we cannot use it as a hint to know
when to release the
keyboard grab,

The gnome-screensaver determines when it should screensave / lock based on a
dbus signal from the gnome session manager, this is documented here:
http://people.gnome.org/~mccann/gnome-session/docs/gnome-session.html#org.gnome.SessionManager.Presence::StatusChanged

When the status goes to '3' (idle) then gnome-screensaver will try to activate
the screensaver, so we
(spice-gtk) could listen to the StatusChanged signal and when the status
becomes 3 release our keyboard grab.

The problem with this is that it is highly desktop environment specific ...

Also interesting in the light of this bug is:
http://live.gnome.org/GnomeScreensaver/FrequentlyAskedQuestions

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the spice-bugs mailing list