summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>2014-07-01 15:44:12 +0900
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2014-07-01 19:40:26 +0900
commit007dd02c56c5bc20a4d8d8f72a0e2617a4eb219a (patch)
tree17597122b960da7ab174c1bb437a9de405ddd75e
parenteeb66d4d322a2b8cdf5c31f3aa181ea29aeda623 (diff)
downloadefl-007dd02c56c5bc20a4d8d8f72a0e2617a4eb219a.tar.gz
ecore_x - add some minor calls to be able to suspend/resume screensaver
-rw-r--r--src/lib/ecore_x/Ecore_X.h4
-rw-r--r--src/lib/ecore_x/xcb/ecore_xcb_screensaver.c17
-rw-r--r--src/lib/ecore_x/xlib/ecore_x_screensaver.c16
3 files changed, 36 insertions, 1 deletions
diff --git a/src/lib/ecore_x/Ecore_X.h b/src/lib/ecore_x/Ecore_X.h
index da973c9665..059fa94110 100644
--- a/src/lib/ecore_x/Ecore_X.h
+++ b/src/lib/ecore_x/Ecore_X.h
@@ -1972,7 +1972,9 @@ EAPI int ecore_x_screensaver_interval_get(void);
EAPI void ecore_x_screensaver_event_listen_set(Eina_Bool on);
EAPI Eina_Bool ecore_x_screensaver_custom_blanking_enable(void); /** @since 1.7 */
EAPI Eina_Bool ecore_x_screensaver_custom_blanking_disable(void); /** @since 1.7 */
-
+EAPI void ecore_x_screensaver_supend(void);
+EAPI void ecore_x_screensaver_resume(void);
+
/* FIXME: these funcs need categorising */
typedef struct _Ecore_X_Window_Attributes
diff --git a/src/lib/ecore_x/xcb/ecore_xcb_screensaver.c b/src/lib/ecore_x/xcb/ecore_xcb_screensaver.c
index 6106450c88..fe13fb04c8 100644
--- a/src/lib/ecore_x/xcb/ecore_xcb_screensaver.c
+++ b/src/lib/ecore_x/xcb/ecore_xcb_screensaver.c
@@ -368,3 +368,20 @@ ecore_x_screensaver_custom_blanking_disable(void)
return EINA_FALSE;
#endif
}
+
+
+EAPI void
+ecore_x_screensaver_supend(void)
+{
+#ifdef ECORE_XCB_SCREENSAVER
+ xcb_screensaver_suspend(_ecore_xcb_conn, 1);
+#endif
+}
+
+EAPI void
+ecore_x_screensaver_resume(void)
+{
+#ifdef ECORE_XCB_SCREENSAVER
+ xcb_screensaver_suspend(_ecore_xcb_conn, 0);
+#endif
+}
diff --git a/src/lib/ecore_x/xlib/ecore_x_screensaver.c b/src/lib/ecore_x/xlib/ecore_x_screensaver.c
index 3688a44c56..e334ca23d1 100644
--- a/src/lib/ecore_x/xlib/ecore_x_screensaver.c
+++ b/src/lib/ecore_x/xlib/ecore_x_screensaver.c
@@ -202,3 +202,19 @@ ecore_x_screensaver_custom_blanking_disable(void)
#endif /* ifdef ECORE_XSS */
}
+EAPI void
+ecore_x_screensaver_supend(void)
+{
+#ifdef ECORE_XSS
+ XScreenSaverSuspend(_ecore_x_disp, 1);
+#endif /* ifdef ECORE_XSS */
+}
+
+EAPI void
+ecore_x_screensaver_resume(void)
+{
+#ifdef ECORE_XSS
+ XScreenSaverSuspend(_ecore_x_disp, 0);
+#endif /* ifdef ECORE_XSS */
+}
+