return whether setting idle time worked
authordaniel watson <ozzloy@gmail.com>
Sun, 31 Jul 2016 18:37:40 +0000 (11:37 -0700)
committerdaniel watson <ozzloy@gmail.com>
Sun, 31 Jul 2016 18:37:40 +0000 (11:37 -0700)
idle_x11.cpp
idle_x11.h

index ebe49f5aed72a46b0d4accfed921361ecd2e0eab..4984cdf8b9124e9b3713d4979a039e0ed2c050ab 100644 (file)
 #include <X11/extensions/sync.h>
 #include <X11/extensions/scrnsaver.h>
 
-static Display *dpy = NULL;
 
-void reset_idle_time()
+int reset_idle_time()
 {
-       if (!dpy) {
+  Display *display = NULL;
+       if (!display) {
                if (!(dpy = XOpenDisplay(NULL))) {
                        fputs("Could not open X11 display.\n", stderr);
                        return;
                }
        }
-
-       XScreenSaverSuspend(dpy, True);
-       XSync(dpy, False);
-       XScreenSaverSuspend(dpy, False);
-       XSync(dpy, False); 
+  int x_force_screen_saver;
+  int screen_saver_mode = ScreenSaverReset;
+  x_force_screen_saver = XForceScreenSaver(dpy, screen_saver_mode);
+  return x_force_screen_saver;
 }
index fc54ac0622c8c0d12f13bf4305375957223397bf..e459dc28375e55a6ea0d5b1239fa93520c3f3bd6 100644 (file)
@@ -1,2 +1,2 @@
 
-void reset_idle_time();
+int reset_idle_time();