diff --git a/dix/window.c b/dix/window.c index caff1cbff..2676a546a 100644 --- a/dix/window.c +++ b/dix/window.c @@ -3233,8 +3233,13 @@ dixSaveScreens(ClientPtr client, int on, int mode) } } screenIsSaved = what; - if (mode == ScreenSaverReset) - SetScreenSaverTimer(); + if (mode == ScreenSaverReset) { + if (on == SCREEN_SAVER_FORCER) { + UpdateCurrentTimeIf(); + lastDeviceEventTime = currentTime; + } + SetScreenSaverTimer(); + } return Success; }