[PATCH] Update lastDeviceEventTime in XResetScreenSaver
Julien Cristau
jcristau at debian.org
Sat Jan 2 03:58:40 PST 2010
From: Lubos Lunak <l.lunak at suse.cz>
After xserver commit 6b5978dcf1f7ac3ecc2f22df06f7000f360e2066
(Do not reset lastDeviceEventTime when we do dixSaveScreens)
applications using XResetScreenSaver() no longer prevent the KDE
screensaver from activating, which uses XScreenSaverQueryInfo() to
detect the idle time and activates after a specified timeout. After this
commit there appears to be no way to detect that XResetScreenSaver() has
been used (the IDLE timer is presumably affected as well).
X.Org bug#25855 <http://bugs.freedesktop.org/show_bug.cgi?id=25855>
---
dix/dispatch.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/dix/dispatch.c b/dix/dispatch.c
index 982c808..1bd9bfd 100644
--- a/dix/dispatch.c
+++ b/dix/dispatch.c
@@ -3517,6 +3517,11 @@ int ProcForceScreenSaver(ClientPtr client)
rc = dixSaveScreens(client, SCREEN_SAVER_FORCER, (int)stuff->mode);
if (rc != Success)
return rc;
+ if (stuff->mode == ScreenSaverReset)
+ {
+ UpdateCurrentTimeIf();
+ lastDeviceEventTime = currentTime;
+ }
return client->noClientException;
}
--
1.6.5.7
More information about the xorg-devel
mailing list