XSetScreenSaver(), XForceScreenSaver(), XActivateScreenSaver(), XResetScreenSaver(), XGetScreenSaver() - manipulate the screen saver
XSetScreenSaver (Display *display, int timeout, int interval,
int prefer_blanking, int allow_exposures)
XForceScreenSaver (Display *display, int mode)
XActivateScreenSaver (Display *display)
XResetScreenSaver (Display *display)
XGetScreenSaver (Display *display, int *timeout_return,
int *interval_return, int *prefer_blanking_return,
int *allow_exposures_return)
Timeout and interval are specified in seconds. A timeout of 0 disables the screen saver (but an activated screen saver is not deactivated), and a timeout of -1 restores the default. Other negative values generate a BadValue error. If the timeout value is nonzero, XSetScreenSaver(3) enables the screen saver. An interval of 0 disables the random-pattern motion. If no input from devices (keyboard, mouse, and so on) is generated for the specified number of timeout seconds once the screen saver is enabled, the screen saver is activated.
For each screen, if blanking is preferred and the hardware supports video blanking, the screen simply goes blank. Otherwise, if either exposures are allowed or the screen can be regenerated without sending Expose events to clients, the screen is tiled with the root window background tile randomly re-origined each interval minutes. Otherwise, the screens' state do not change, and the screen saver is not activated. The screen saver is deactivated, and all screen states are restored at the next keyboard or pointer input or at the next call to XForceScreenSaver with mode ScreenSaverReset.
If the server-dependent screen saver method supports periodic change, the interval argument serves as a hint about how long the change period should be, and zero hints that no periodic change should be made. Examples of ways to change the screen include scrambling the colormap periodically, moving an icon image around the screen periodically, or tiling the screen with the root window background tile, randomly re-origined periodically.
XSetScreenSaver(3) can generate a BadValue error.
If the specified mode is ScreenSaverActive and the screen saver currently is deactivated, XForceScreenSaver(3) activates the screen saver even if the screen saver had been disabled with a timeout of zero. If the specified mode is ScreenSaverReset and the screen saver currently is enabled, XForceScreenSaver(3) deactivates the screen saver if it was activated, and the activation timer is reset to its initial state (as if device input had been received).
XForceScreenSaver(3) can generate a BadValue error.
The XActivateScreenSaver(3) function activates the screen saver.
The XResetScreenSaver(3) function resets the screen saver.
The XGetScreenSaver(3) function gets the current screen saver values.
Xlib