GNOME Bugzilla – Bug 335149
When playing Xmame fullscreen the screensaver starts
Last modified: 2009-08-21 04:22:45 UTC
Please describe the problem: When playing Xmame fullscreen the screensaver starts despite all the key presses. I'm running Xmame in the OpenGL video mode. This didn't happen with Xscreensaver. Shouldn't the session become idle only if there aren't any key presses or mouse movements at all? Steps to reproduce: 1. Start Xmame (or maybe other OpenGL games) in fullscreen 2. Play the game for 15 minutes (or whatever your idle_delay is) 3. Actual results: The screensaver starts above the game. Pressing some keys or moving the mouse does nothing. Expected results: Does this happen every time? Yes. Other information:
Are you using the gxmame front end?
Yes. I forgot to mention that. I'm using GXMame version 0.35beta2. I don't know if this is relevant, but beagle also starts indexing files after a while. So maybe this isn't exactly a gnome-screen-saver problem, but something that tells gnome-screen-saver and beagle that the computer is idle?
We'll need to modify gxmame to disable the screensaver. I've had this problem myself. I made the following patch a while back but it needs to be updated with gnome-screensaver support: http://sourceforge.net/tracker/index.php?func=detail&aid=1145600&group_id=50621&atid=460395
Ok! But will that solve the problem with beagle indexing? Or maybe beagle gets the idle info from gnome-screensaver... I don't know... but I had the impression that the indexing started before the screen going blank.
Same problem with mplayer - should that get a separate bug?
Steven, please file a bug with mplayer. Thanks.
Does every single app really need to be patched to blank the screen with gnome-screensaver's special method? Do apps now have to cope with each of gnome-screensaver, xscreensaver, KDE's screensaver, xlockmore and probably more ... ?
Sam, only applications that need to inhibit the screensaver - yes. This isn't really that many. This will hopefully become a freedesktop standard.
(In reply to comment #8) > Sam, only applications that need to inhibit the screensaver - yes. This isn't > really that many. In my experience it includes any game that goes fullscreen--including commercial ones that will never have dbus added to them, like UT2004.
Shouldn't gnome-screensaver use the same 'don't blank the screen if I'm playing ppracer' stuff as xscreensaver or KDE screensaver (neither of which interfere with fullscreen games)?
same problem with stepmania. I don't think it disables xscreensaver, I don't know, but I think xscreensaver is just able to know when something is in fullscreen, or maybe it catchs the keys you press...
The same problem happens with Planet Penguin Racer.
Possible duplicate filed downstream, but against a very old g-s version. Can anyone confirm or deny if the mentioned applications (armagedtron, vmware) are still overlooked by modern versions of g-s? http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=352003
This could probably be fixed directly in SDL, but there should also be a mechanism in g-s to detect fullscreen applications that grab all input devices, like games.
This looks to be a problem with Gnome ScreenSaver not detecting the correct use of the XResetScreenSaver standard such as now used by SDL and MPlayer, where the optional DBus API is not really appropriate. Any argument against supporting XResetScreenSaver would just be utter nonsense. Will have a look and see if I can come up with a patch.
Ok, I now fully realise how craptastic screensaver setup is with X. However we do have a possible solution by using the IDLETIME sync counter, added with Xorg 1.4, as any call to XResetScreenSaver updates the last event time - see dixSaveScreens() in xorg-xserver/dix/window.c. Will think about it. Also from looking over the code, using_mit_saver_extension is never true. Looks to have been a straight copy and paste from xscreensaver. I'd assume we would want to register and kill any currently running screensaver but still set time to 0 so we don't use the MIT extension. However that is another bug.
IDLETIME support has been implemented in bug 444927 for gnome-screensaver 2.25.2 (thankfully as I was puzzling over integrating it) and I can report it is working perfectly with SDL CVS (or 1.2.14 when it is released). No screensaver activation whilst running SDL games. However you do need to have xorg-server patched with the following otherwise it pegs the CPU. http://cgit.freedesktop.org/xorg/xserver/commit/?id=1f4fb0225b278d1cf4145aebeb0bdd23dc8f62d5 Following was the patch to SDL. http://www.libsdl.org/cgi/viewvc.cgi?view=rev&revision=3558
*** Bug 568264 has been marked as a duplicate of this bug. ***
*** This bug has been marked as a duplicate of bug 444927 ***