[gnome-settings-daemon] background: Use new SessionManager singleton



commit 35598d856cb5b61ea974ece2af80f44756ae21db
Author: Matthias Clasen <mclasen redhat com>
Date:   Mon Oct 22 10:02:10 2012 +0200

    background: Use new SessionManager singleton
    
    https://bugzilla.gnome.org/show_bug.cgi?id=686556

 plugins/background/gsd-background-manager.c |   24 ++++--------------------
 1 files changed, 4 insertions(+), 20 deletions(-)
---
diff --git a/plugins/background/gsd-background-manager.c b/plugins/background/gsd-background-manager.c
index 10ed128..37324e7 100644
--- a/plugins/background/gsd-background-manager.c
+++ b/plugins/background/gsd-background-manager.c
@@ -42,6 +42,7 @@
 #include <libgnome-desktop/gnome-bg.h>
 #include <X11/Xatom.h>
 
+#include "gnome-settings-session.h"
 #include "gnome-settings-profile.h"
 #include "gsd-background-manager.h"
 
@@ -333,25 +334,8 @@ on_session_manager_signal (GDBusProxy   *proxy,
 static void
 draw_background_after_session_loads (GsdBackgroundManager *manager)
 {
-        GError *error = NULL;
-        GDBusProxyFlags flags;
-
-        flags = G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES |
-                G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START;
-        manager->priv->proxy = g_dbus_proxy_new_for_bus_sync (G_BUS_TYPE_SESSION,
-                                                              flags,
-                                                              NULL, /* GDBusInterfaceInfo */
-                                                              "org.gnome.SessionManager",
-                                                              "/org/gnome/SessionManager",
-                                                              "org.gnome.SessionManager",
-                                                              NULL, /* GCancellable */
-                                                              &error);
-        if (manager->priv->proxy == NULL) {
-                g_warning ("Could not listen to session manager: %s",
-                           error->message);
-                g_error_free (error);
-                return;
-        }
+        manager->priv->proxy =
+                gnome_settings_session_get_session_proxy ();
 
         manager->priv->proxy_signal_id = g_signal_connect (manager->priv->proxy,
                                                            "g-signal",
@@ -457,7 +441,7 @@ gsd_background_manager_stop (GsdBackgroundManager *manager)
 
         if (manager->priv->proxy) {
                 disconnect_session_manager_listener (manager);
-                g_object_unref (manager->priv->proxy);
+                g_clear_object (&manager->priv->proxy);
         }
 
         g_signal_handlers_disconnect_by_func (manager->priv->settings,



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]