gnome-power-manager r3184 - in trunk: . src



Author: rhughes
Date: Tue Jan 27 12:39:15 2009
New Revision: 3184
URL: http://svn.gnome.org/viewvc/gnome-power-manager?rev=3184&view=rev

Log:
2009-01-27  Richard Hughes  <richard hughsie com>

* src/gpm-manager.c: (manager_policy_do):
Use the logout function in gpm-session, not our own local version.


Modified:
   trunk/ChangeLog
   trunk/src/gpm-manager.c

Modified: trunk/src/gpm-manager.c
==============================================================================
--- trunk/src/gpm-manager.c	(original)
+++ trunk/src/gpm-manager.c	Tue Jan 27 12:39:15 2009
@@ -59,6 +59,7 @@
 #include "gpm-backlight.h"
 #include "gpm-brightness-kbd.h"
 #include "gpm-screensaver.h"
+#include "gpm-session.h"
 #include "gpm-stock-icons.h"
 #include "gpm-prefs-server.h"
 #include "gpm-tray-icon.h"
@@ -74,10 +75,6 @@
 #define GPM_MANAGER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GPM_TYPE_MANAGER, GpmManagerPrivate))
 #define GPM_MANAGER_RECALL_DELAY		10
 
-#define GPM_SESSION_MANAGER_SERVICE	"org.gnome.SessionManager"
-#define GPM_SESSION_MANAGER_INTERFACE	"org.gnome.SessionManager"
-#define GPM_SESSION_MANAGER_PATH	"/org/gnome/SessionManager"
-
 struct GpmManagerPrivate
 {
 	GpmAcAdapter		*ac_adapter;
@@ -446,34 +443,6 @@
 }
 
 /**
- * gpm_manager_logout_interactive:
- **/
-static gboolean
-gpm_manager_logout_interactive (GpmManager *manager)
-{
-	GError *error = NULL;
-	DBusGProxy *proxy;
-	DBusGConnection *connection;
-
-	/* get session connection */
-	connection = dbus_g_bus_get (DBUS_BUS_SESSION, &error);
-	if (connection == NULL) {
-		egg_warning ("failed to do interactive shutdown: %s", error->message);
-		g_error_free (error);
-		return FALSE;
-	}
-
-	/* contact the session manager */
-	proxy = dbus_g_proxy_new_for_name (connection, GPM_SESSION_MANAGER_SERVICE,
-					   GPM_SESSION_MANAGER_PATH, GPM_SESSION_MANAGER_INTERFACE);
-
-	/* we have to use no reply, as the SM calls into g-p-m to get the can_suspend property */
-	dbus_g_proxy_call_no_reply (proxy, "Shutdown", G_TYPE_INVALID);
-	g_object_unref (proxy);
-	return TRUE;
-}
-
-/**
  * manager_policy_do:
  * @manager: This class instance
  * @policy: The policy that we should do, e.g. "suspend"
@@ -511,8 +480,11 @@
 		gpm_control_shutdown (manager->priv->control, NULL);
 
 	} else if (strcmp (action, ACTION_INTERACTIVE) == 0) {
+		GpmSession *session;
 		egg_debug ("logout, reason: %s", reason);
-		gpm_manager_logout_interactive (manager);
+		session = gpm_session_new ();
+		gpm_session_logout (session);
+		g_object_unref (session);
 	} else {
 		egg_warning ("unknown action %s", action);
 	}



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