This is an automated email from the git hooks/post-receive script. b l u e s a b r e p u s h e d a c o m m i t t o b r a n c h m a s t e r in repository apps/xfce4-screensaver.
commit 6a70b11b7800d19ac71e67f6d08887f6e598a788 Author: Alexander Butenko <a.bute...@gmail.com> Date: Fri Jun 28 10:33:37 2019 -0400 more of configuration processing refactoring Signed-off-by: Sean Davis <smd.seanda...@gmail.com> --- src/gs-listener-dbus.c | 57 ++++-------------------------------------- src/gs-listener-x11.c | 40 ++++++++++++------------------ src/gs-listener-x11.h | 7 +----- src/gs-manager.c | 67 +++----------------------------------------------- src/gs-manager.h | 4 --- src/gs-monitor.c | 21 ---------------- 6 files changed, 26 insertions(+), 170 deletions(-) diff --git a/src/gs-listener-dbus.c b/src/gs-listener-dbus.c index 7149c8b..f0c7871 100644 --- a/src/gs-listener-dbus.c +++ b/src/gs-listener-dbus.c @@ -45,6 +45,7 @@ #include "gs-listener-dbus.h" #include "gs-marshal.h" #include "gs-debug.h" +#include "gs-prefs.h" static void gs_listener_class_init (GSListenerClass *klass); static void gs_listener_init (GSListener *listener); @@ -83,10 +84,9 @@ struct GSListenerPrivate { DBusConnection *connection; DBusConnection *system_connection; + GSPrefs *prefs; guint session_idle : 1; guint active : 1; - guint activation_enabled : 1; - guint sleep_activation_enabled : 1; guint throttled : 1; GHashTable *inhibitors; GHashTable *throttlers; @@ -126,8 +126,6 @@ enum { PROP_0, PROP_ACTIVE, PROP_SESSION_IDLE, - PROP_ACTIVATION_ENABLED, - PROP_SLEEP_ACTIVATION_ENABLED, }; enum { @@ -310,7 +308,7 @@ listener_check_activation (GSListener *listener) { gs_debug ("Checking for activation"); - if (!listener->priv->activation_enabled) { + if (!listener->priv->prefs->idle_activation_enabled) { return TRUE; } @@ -466,26 +464,6 @@ gs_listener_set_session_idle (GSListener *listener, return res; } -void -gs_listener_set_activation_enabled (GSListener *listener, - gboolean enabled) { - g_return_if_fail (GS_IS_LISTENER (listener)); - - if (listener->priv->activation_enabled != enabled) { - listener->priv->activation_enabled = enabled; - } -} - -void -gs_listener_set_sleep_activation_enabled (GSListener *listener, - gboolean enabled) { - g_return_if_fail (GS_IS_LISTENER (listener)); - - if (listener->priv->sleep_activation_enabled != enabled) { - listener->priv->sleep_activation_enabled = enabled; - } -} - static dbus_bool_t listener_property_set_bool (GSListener *listener, guint prop_id, @@ -1462,7 +1440,7 @@ listener_dbus_handle_system_message (DBusConnection *connection, dbus_error_init (&error); dbus_message_get_args (message, &error, DBUS_TYPE_BOOLEAN, &active, DBUS_TYPE_INVALID); if (active) { - if (listener->priv->sleep_activation_enabled) { + if (listener->priv->prefs->sleep_activation_enabled) { gs_debug ("Logind requested session lock"); g_signal_emit (listener, signals[LOCK], 0); } else { @@ -1776,12 +1754,6 @@ gs_listener_set_property (GObject *object, case PROP_SESSION_IDLE: gs_listener_set_session_idle (self, g_value_get_boolean (value)); break; - case PROP_ACTIVATION_ENABLED: - gs_listener_set_activation_enabled (self, g_value_get_boolean (value)); - break; - case PROP_SLEEP_ACTIVATION_ENABLED: - gs_listener_set_sleep_activation_enabled (self, g_value_get_boolean (value)); - break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; @@ -1804,12 +1776,6 @@ gs_listener_get_property (GObject *object, case PROP_SESSION_IDLE: g_value_set_boolean (value, self->priv->session_idle); break; - case PROP_ACTIVATION_ENABLED: - g_value_set_boolean (value, self->priv->activation_enabled); - break; - case PROP_SLEEP_ACTIVATION_ENABLED: - g_value_set_boolean (value, self->priv->sleep_activation_enabled); - break; default: G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); break; @@ -1907,20 +1873,6 @@ gs_listener_class_init (GSListenerClass *klass) { NULL, FALSE, G_PARAM_READWRITE)); - g_object_class_install_property (object_class, - PROP_ACTIVATION_ENABLED, - g_param_spec_boolean ("activation-enabled", - NULL, - NULL, - TRUE, - G_PARAM_READWRITE)); - g_object_class_install_property (object_class, - PROP_SLEEP_ACTIVATION_ENABLED, - g_param_spec_boolean ("sleep-activation-enabled", - NULL, - NULL, - TRUE, - G_PARAM_READWRITE)); } static gboolean @@ -2183,6 +2135,7 @@ gs_listener_init (GSListener *listener) { /* check if logind is running */ listener->priv->have_logind = (access("/run/systemd/seats/", F_OK) >= 0); #endif + listener->priv->prefs = gs_prefs_new(); gs_listener_dbus_init (listener); diff --git a/src/gs-listener-x11.c b/src/gs-listener-x11.c index 0cb7faa..0223989 100644 --- a/src/gs-listener-x11.c +++ b/src/gs-listener-x11.c @@ -37,6 +37,7 @@ #include "gs-listener-x11.h" #include "gs-marshal.h" #include "gs-debug.h" +#include "gs-prefs.h" static void gs_listener_x11_class_init (GSListenerX11Class *klass); static void gs_listener_x11_init (GSListenerX11 *listener); @@ -49,8 +50,7 @@ struct GSListenerX11Private { int scrnsaver_event_base; gint lock_timeout; guint lock_timer_id; - gboolean idle_activation_enabled; - gboolean saver_enabled; + GSPrefs *prefs; }; enum { @@ -111,18 +111,18 @@ lock_timer (GSListenerX11 *listener) { guint idle_time; gint state; - if (!listener->priv->saver_enabled) + if (!listener->priv->prefs->saver_enabled) return TRUE; get_x11_idle_info (&idle_time, &state); gs_debug("Lock Timeout: %is, Idle: %is, Idle Activation: %s, Screensaver: %s, Lock State: %s", listener->priv->lock_timeout, idle_time, - listener->priv->idle_activation_enabled ? "Enabled" : "Disabled", + listener->priv->prefs->idle_activation_enabled ? "Enabled" : "Disabled", state == ScreenSaverDisabled ? "Disabled" : "Enabled", state == ScreenSaverOn ? "Locked" : "Unlocked"); - if (listener->priv->idle_activation_enabled && + if (listener->priv->prefs->idle_activation_enabled && idle_time >= listener->priv->lock_timeout && state != ScreenSaverDisabled) { if (state == ScreenSaverOn) @@ -185,7 +185,7 @@ xroot_filter (GdkXEvent *xevent, listener = GS_LISTENER_X11 (data); - if (!listener->priv->idle_activation_enabled) + if (!listener->priv->prefs->idle_activation_enabled) return GDK_FILTER_CONTINUE; ev = xevent; @@ -249,38 +249,29 @@ gs_listener_x11_acquire (GSListenerX11 *listener) { } void -gs_listener_x11_set_timeout (GSListenerX11 *listener, - gint timeout) { +gs_listener_x11_set_timeout (GSListenerX11 *listener) { Display *display = gdk_x11_display_get_xdisplay(gdk_display_get_default()); - gint lock_timeout = timeout * 60; + gint lock_timeout = listener->priv->prefs->timeout * 60; /* set X server timeouts and disable screen blanking */ XSetScreenSaver(display, lock_timeout, lock_timeout, 0, 0); if (listener->priv->lock_timeout != lock_timeout) { - listener->priv->lock_timeout = timeout * 60; - reset_lock_timer(listener, listener->priv->lock_timeout); - gs_debug("Lock timeout updated to %i minutes", timeout); + listener->priv->lock_timeout = lock_timeout; + reset_lock_timer(listener, lock_timeout); + gs_debug("Lock timeout updated to %i seconds", lock_timeout); } } -void -gs_listener_x11_set_saver_enabled (GSListenerX11 *listener, - gboolean enabled) { - listener->priv->saver_enabled = enabled; -} - -void -gs_listener_x11_set_activation_enabled (GSListenerX11 *listener, - gboolean enabled) { - listener->priv->idle_activation_enabled = enabled; -} - static void gs_listener_x11_init (GSListenerX11 *listener) { listener->priv = gs_listener_x11_get_instance_private (listener); listener->priv->lock_timeout = 0; + + listener->priv->prefs = gs_prefs_new(); + gs_listener_x11_set_timeout (listener); + g_signal_connect_swapped(listener->priv->prefs, "changed", G_CALLBACK(gs_listener_x11_set_timeout), listener); } static void @@ -295,6 +286,7 @@ gs_listener_x11_finalize (GObject *object) { g_return_if_fail (listener->priv != NULL); gdk_window_remove_filter (NULL, (GdkFilterFunc)xroot_filter, NULL); + g_signal_handlers_disconnect_by_func(listener->priv->prefs, gs_listener_x11_set_timeout, listener); G_OBJECT_CLASS (gs_listener_x11_parent_class)->finalize (object); } diff --git a/src/gs-listener-x11.h b/src/gs-listener-x11.h index f4e1076..bb0db15 100644 --- a/src/gs-listener-x11.h +++ b/src/gs-listener-x11.h @@ -53,12 +53,7 @@ GType gs_listener_x11_get_type (void); GSListenerX11 *gs_listener_x11_new (void); gboolean gs_listener_x11_acquire (GSListenerX11 *listener); void - gs_listener_x11_set_timeout (GSListenerX11 *listener, - gint timeout); -void gs_listener_x11_set_saver_enabled (GSListenerX11 *listener, - gboolean enabled); -void gs_listener_x11_set_activation_enabled (GSListenerX11 *listener, - gboolean enabled); + gs_listener_x11_set_timeout (GSListenerX11 *listener); G_END_DECLS #endif /* SRC_GS_LISTENER_X11_H_ */ diff --git a/src/gs-manager.c b/src/gs-manager.c index 21d7089..743fea7 100644 --- a/src/gs-manager.c +++ b/src/gs-manager.c @@ -53,8 +53,6 @@ struct GSManagerPrivate { /* Policy */ GSPrefs *prefs; - glong lock_timeout; - glong cycle_timeout; guint throttled : 1; char *status_message; @@ -438,30 +436,6 @@ add_lock_timer (GSManager *manager, } void -gs_manager_set_lock_timeout (GSManager *manager, - glong lock_timeout) { - g_return_if_fail (GS_IS_MANAGER (manager)); - - if (manager->priv->lock_timeout != lock_timeout) { - manager->priv->lock_timeout = lock_timeout; - - if (manager->priv->active - && !manager->priv->lock_active - && (lock_timeout >= 0)) { - glong elapsed = (time (NULL) - manager->priv->activate_time) * 1000; - - remove_lock_timer (manager); - - if (elapsed >= lock_timeout) { - activate_lock_timeout (manager); - } else { - add_lock_timer (manager, lock_timeout - elapsed); - } - } - } -} - -void gs_manager_set_status_message (GSManager *manager, const char *message) { GSList *l; @@ -529,36 +503,6 @@ add_cycle_timer (GSManager *manager, manager); } -void -gs_manager_set_cycle_timeout (GSManager *manager, - glong cycle_timeout) { - g_return_if_fail (GS_IS_MANAGER (manager)); - - if (manager->priv->cycle_timeout != cycle_timeout) { - manager->priv->cycle_timeout = cycle_timeout; - - if (manager->priv->active && (cycle_timeout >= 0)) { - glong timeout; - glong elapsed = (time (NULL) - manager->priv->activate_time) * 1000; - - remove_cycle_timer (manager); - - if (elapsed >= cycle_timeout) { - timeout = 0; - } else { - timeout = cycle_timeout - elapsed; - } - - add_cycle_timer (manager, timeout); - } - } -} - -static void _gs_manager_update_from_prefs(GSManager* manager, GSPrefs* prefs) { - gs_manager_set_lock_timeout(manager, prefs->lock_timeout); - gs_manager_set_cycle_timeout(manager, prefs->cycle); -} - static void gs_manager_set_property (GObject *object, guint prop_id, @@ -691,8 +635,6 @@ gs_manager_init (GSManager *manager) { manager->priv->bg = xfce_bg_new (); manager->priv->prefs = gs_prefs_new(); - g_signal_connect_swapped(manager->priv->prefs, "changed", G_CALLBACK(_gs_manager_update_from_prefs), manager); - _gs_manager_update_from_prefs (manager, manager->priv->prefs); xfce_bg_load_from_preferences (manager->priv->bg, NULL); @@ -908,14 +850,14 @@ manager_show_window (GSManager *manager, manager->priv->activate_time = time (NULL); - if (manager->priv->lock_timeout >= 0) { + if (manager->priv->prefs->lock_timeout >= 0) { remove_lock_timer (manager); - add_lock_timer (manager, manager->priv->lock_timeout); + add_lock_timer (manager, manager->priv->prefs->lock_timeout); } - if (manager->priv->cycle_timeout >= 10000) { + if (manager->priv->prefs->cycle >= 10000) { remove_cycle_timer (manager); - add_cycle_timer (manager, manager->priv->cycle_timeout); + add_cycle_timer (manager, manager->priv->prefs->cycle); } /* FIXME: only emit signal once */ @@ -1199,7 +1141,6 @@ gs_manager_finalize (GObject *object) { if (manager->priv->bg != NULL) { g_object_unref (manager->priv->bg); } - g_signal_handlers_disconnect_by_func(manager->priv->prefs, _gs_manager_update_from_prefs, manager); remove_deepsleep_idle (manager); remove_timers(manager); diff --git a/src/gs-manager.h b/src/gs-manager.h index 62cc112..b06e17a 100644 --- a/src/gs-manager.h +++ b/src/gs-manager.h @@ -72,12 +72,8 @@ void gs_manager_set_saver_active (GSManager *manager, gboolean saver_active); void gs_manager_set_status_message (GSManager *manager, const char *message); -void gs_manager_set_lock_timeout (GSManager *manager, - glong lock_timeout); void gs_manager_set_throttled (GSManager *manager, gboolean throttled); -void gs_manager_set_cycle_timeout (GSManager *manager, - glong cycle_timeout); void gs_manager_show_message (GSManager *manager, const char *summary, const char *body, diff --git a/src/gs-monitor.c b/src/gs-monitor.c index 835b538..0f3d8c5 100644 --- a/src/gs-monitor.c +++ b/src/gs-monitor.c @@ -193,15 +193,6 @@ static void listener_simulate_user_activity_cb(GSListener* listener, GSMonitor* gs_monitor_simulate_user_activity(monitor); } -static void _gs_monitor_update_from_prefs(GSMonitor* monitor, GSPrefs* prefs) { - /* enable activation when allowed */ - gs_listener_set_activation_enabled(monitor->priv->listener, prefs->idle_activation_enabled); - gs_listener_set_sleep_activation_enabled(monitor->priv->listener, prefs->sleep_activation_enabled); - gs_listener_x11_set_activation_enabled(monitor->priv->listener_x11, prefs->idle_activation_enabled); - gs_listener_x11_set_timeout(monitor->priv->listener_x11, prefs->timeout); - gs_listener_x11_set_saver_enabled(monitor->priv->listener_x11, prefs->saver_enabled); -} - static void disconnect_listener_signals(GSMonitor* monitor) { g_signal_handlers_disconnect_by_func(monitor->priv->listener, listener_lock_cb, monitor); g_signal_handlers_disconnect_by_func(monitor->priv->listener, listener_quit_cb, monitor); @@ -247,19 +238,10 @@ static void connect_manager_signals(GSMonitor* monitor) { g_signal_connect(monitor->priv->manager, "deactivated", G_CALLBACK(manager_deactivated_cb), monitor); } -static void disconnect_prefs_signals(GSMonitor* monitor) { - g_signal_handlers_disconnect_by_func(monitor->priv->prefs, _gs_monitor_update_from_prefs, monitor); -} - -static void connect_prefs_signals(GSMonitor* monitor) { - g_signal_connect_swapped(monitor->priv->prefs, "changed", G_CALLBACK(_gs_monitor_update_from_prefs), monitor); -} - static void gs_monitor_init(GSMonitor* monitor) { monitor->priv = gs_monitor_get_instance_private (monitor); monitor->priv->prefs = gs_prefs_new(); - connect_prefs_signals(monitor); monitor->priv->listener = gs_listener_new(); monitor->priv->listener_x11 = gs_listener_x11_new(); @@ -269,8 +251,6 @@ static void gs_monitor_init(GSMonitor* monitor) { monitor->priv->manager = gs_manager_new(); connect_manager_signals(monitor); - - _gs_monitor_update_from_prefs(monitor, monitor->priv->prefs); } static void gs_monitor_finalize(GObject* object) { @@ -285,7 +265,6 @@ static void gs_monitor_finalize(GObject* object) { disconnect_listener_signals(monitor); disconnect_manager_signals(monitor); - disconnect_prefs_signals(monitor); g_object_unref(monitor->priv->grab); g_object_unref(monitor->priv->listener); -- To stop receiving notification emails like this one, please contact the administrator of this repository. _______________________________________________ Xfce4-commits mailing list Xfce4-commits@xfce.org https://mail.xfce.org/mailman/listinfo/xfce4-commits