From eb9361c9b0b05c3bd51de7325c3327db79431fc9 Mon Sep 17 00:00:00 2001 From: William Jon McCann Date: Tue, 20 Feb 2007 14:45:40 -0500 Subject: add a system-idle-hint and system-idle-since-hint The system idle hint is TRUE when there are no busy (ie non-idle) sessions. So the system is idle when there are no sessions or all sessions are idle. --- src/ck-manager.h | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'src/ck-manager.h') diff --git a/src/ck-manager.h b/src/ck-manager.h index 0834d9f..331a5c4 100644 --- a/src/ck-manager.h +++ b/src/ck-manager.h @@ -48,10 +48,12 @@ typedef struct { GObjectClass parent_class; - void (* seat_added) (CkManager *manager, - const char *sid); - void (* seat_removed) (CkManager *manager, - const char *sid); + void (* seat_added) (CkManager *manager, + const char *sid); + void (* seat_removed) (CkManager *manager, + const char *sid); + void (* system_idle_hint_changed) (CkManager *manager, + gboolean idle_hint); } CkManagerClass; typedef enum @@ -67,6 +69,8 @@ GType ck_manager_get_type (void); CkManager * ck_manager_new (void); /* unprivileged methods */ + +/* Authoritative properties */ gboolean ck_manager_open_session (CkManager *manager, DBusGMethodInvocation *context); gboolean ck_manager_get_seats (CkManager *manager, @@ -87,6 +91,14 @@ gboolean ck_manager_get_sessions_for_user (CkManager guint uid, DBusGMethodInvocation *context); +/* Non-authoritative properties */ +gboolean ck_manager_get_system_idle_hint (CkManager *manager, + gboolean *idle_hint, + GError **error); +gboolean ck_manager_get_system_idle_since_hint (CkManager *manager, + char **iso8601_datetime, + GError **error); + /* privileged methods - should be protected by D-Bus policy */ gboolean ck_manager_open_session_with_parameters (CkManager *manager, const GPtrArray *parameters, -- cgit