After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 649755 - gnome screensaver activation is hindered by unobscure routine
gnome screensaver activation is hindered by unobscure routine
Status: RESOLVED OBSOLETE
Product: gnome-screensaver
Classification: Deprecated
Component: daemon
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gnome-screensaver maintainers
gnome-screensaver maintainers
Depends on:
Blocks:
 
 
Reported: 2011-05-08 21:16 UTC by rlange
Modified: 2012-10-23 14:54 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Stop screensaver from automatically requesting unlock on unobscure event (407 bytes, patch)
2011-05-08 21:16 UTC, rlange
none Details | Review

Description rlange 2011-05-08 21:16:18 UTC
Created attachment 187479 [details] [review]
Stop screensaver from automatically requesting unlock on unobscure event

To fix Bug #339330, William Jon McCann created a patch that, among other things, introduced the function static void window_obscured_cb(...) into gs-manager.c.  This function is called when the screensaver window is obscured (i.e., when fast user switching swaps to another VT) or unobscured (i.e., switching back to the VT).

In addition to attempting to disable or re-enable the screensaver animation, when the screensaver is unobscured, it automatically makes a request to unlock the screen, saving the user from having to wave their mouse around or do some other thing to bring up the unlock dialog.

My problem is that, for reasons I do not understand, my screensaver thinks, every time it activates due to session timeout, that its window is obscured briefly.  window_obscured_cb is called twice in rapid succession, once for obscure, then again for unobscure.  Because I do not use the screensaver lock feature, this means that, on the unobscure call, the screensaver is deactivated.  Thus, my screensaver will never activate due to a session timeout.

I have verified that the obscured window event is the reason for the screensaver deactivation using the debugging output.

I have attached a patch that fixes the problem by removing the line that requests screensaver unlock automatically as a result of an unobscure event.
Comment 1 rlange 2012-10-23 14:54:27 UTC
I am unable to confirm that this still exists.