[gnome-settings-daemon] smartcard: use common session proxy
- From: Ray Strode <halfline src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-settings-daemon] smartcard: use common session proxy
- Date: Tue, 6 Aug 2013 19:22:26 +0000 (UTC)
commit bed7ce876af9089d898ae88deb6af5408d1e9227
Author: Ray Strode <rstrode redhat com>
Date: Fri Aug 2 16:07:41 2013 -0400
smartcard: use common session proxy
Several existing plugins talk to the session manager, and so
there's API for gaining access to a common proxy singleton.
This commit drops the smartcard plugin specific way of getting
a SessionManager D-Bus proxy in favor of using the common API.
https://bugzilla.gnome.org/show_bug.cgi?id=705127
plugins/smartcard/Makefile.am | 15 +-
plugins/smartcard/gsd-smartcard-manager.c | 40 +--
plugins/smartcard/org.gnome.SessionManager.xml | 451 ------------------------
3 files changed, 4 insertions(+), 502 deletions(-)
---
diff --git a/plugins/smartcard/Makefile.am b/plugins/smartcard/Makefile.am
index 22a2f88..298113b 100644
--- a/plugins/smartcard/Makefile.am
+++ b/plugins/smartcard/Makefile.am
@@ -3,9 +3,8 @@ libsmartcard_headers = gsd-smartcard-manager.h \
gsd-smartcard-utils.h
dbus_built_sources = org.gnome.SettingsDaemon.Smartcard.c org.gnome.SettingsDaemon.Smartcard.h
screensaver_dbus_built_sources = org.gnome.ScreenSaver.c org.gnome.ScreenSaver.h
-session_manager_dbus_built_sources = org.gnome.SessionManager.c org.gnome.SessionManager.h
enum_built_sources = gsd-smartcard-enum-types.h gsd-smartcard-enum-types.c
-BUILT_SOURCES = $(dbus_built_sources) $(screensaver_dbus_built_sources)
$(session_manager_dbus_built_sources) $(enum_built_sources)
+BUILT_SOURCES = $(dbus_built_sources) $(screensaver_dbus_built_sources) $(enum_built_sources)
libexec_PROGRAMS = gsd-test-smartcard
@@ -29,15 +28,6 @@ $(screensaver_dbus_built_sources) : Makefile.am org.gnome.ScreenSaver.xml
"org.gtk.GDBus.C.Name" ScreenSaver \
$(srcdir)/org.gnome.ScreenSaver.xml
-$(session_manager_dbus_built_sources) : Makefile.am org.gnome.SessionManager.xml
- gdbus-codegen \
- --interface-prefix org.gnome.SessionManager. \
- --generate-c-code org.gnome.SessionManager \
- --c-namespace Gsd \
- --annotate "org.gnome.SessionManager" \
- "org.gtk.GDBus.C.Name" SessionManager \
- $(srcdir)/org.gnome.SessionManager.xml
-
gsd-smartcard-enum-types.h: gsd-smartcard-enum-types.h.in $(libsmartcard_headers)
$(AM_V_GEN) $(GLIB_MKENUMS) --template $^ > $@
@@ -47,7 +37,6 @@ gsd-smartcard-enum-types.c: gsd-smartcard-enum-types.c.in $(libsmartcard_headers
gsd_test_smartcard_SOURCES = \
$(dbus_built_sources) \
$(screensaver_dbus_built_sources) \
- $(session_manager_dbus_built_sources) \
$(enum_built_sources) \
gsd-smartcard-service.c \
gsd-smartcard-service.h \
@@ -85,7 +74,6 @@ libsmartcard_la_SOURCES = \
$(libsmartcard_headers) \
$(dbus_built_sources) \
$(screensaver_dbus_built_sources) \
- $(session_manager_dbus_built_sources) \
$(enum_built_sources) \
gsd-smartcard-manager.c \
gsd-smartcard-plugin.c \
@@ -127,7 +115,6 @@ EXTRA_DIST = \
gsd-smartcard-enum-types.c.in \
gsd-smartcard-enum-types.h.in \
org.gnome.ScreenSaver.xml \
- org.gnome.SessionManager.xml \
org.gnome.SettingsDaemon.Smartcard.xml \
$(plugin_in_files)
diff --git a/plugins/smartcard/gsd-smartcard-manager.c b/plugins/smartcard/gsd-smartcard-manager.c
index 4ac31ae..f5d68c0 100644
--- a/plugins/smartcard/gsd-smartcard-manager.c
+++ b/plugins/smartcard/gsd-smartcard-manager.c
@@ -26,13 +26,13 @@
#include "gnome-settings-plugin.h"
#include "gnome-settings-profile.h"
+#include "gnome-settings-session.h"
#include "gsd-smartcard-manager.h"
#include "gsd-smartcard-service.h"
#include "gsd-smartcard-enum-types.h"
#include "gsd-smartcard-utils.h"
#include "org.gnome.ScreenSaver.h"
-#include "org.gnome.SessionManager.h"
#include <prerror.h>
#include <prinit.h>
@@ -794,32 +794,6 @@ lock_screen (GsdSmartcardManager *self)
}
static void
-on_got_session_manager_to_log_out (GObject *object,
- GAsyncResult *result,
- GsdSmartcardManager *self)
-{
- GsdSmartcardManagerPrivate *priv = self->priv;
- GsdSessionManager *session_manager;
- GError *error = NULL;
-
- session_manager = gsd_session_manager_proxy_new_for_bus_finish (result, &error);
-
- if (session_manager == NULL) {
- g_warning ("Couldn't find session manager service to log out: %s",
- error->message);
- g_error_free (error);
- return;
- }
-
- if (priv->session_manager != NULL)
- g_object_unref (session_manager);
-
- priv->session_manager = session_manager;
-
- log_out (self);
-}
-
-static void
on_logged_out (GsdSessionManager *session_manager,
GAsyncResult *result,
GsdSmartcardManager *self)
@@ -841,16 +815,8 @@ log_out (GsdSmartcardManager *self)
{
GsdSmartcardManagerPrivate *priv = self->priv;
- if (priv->session_manager == NULL) {
- gsd_session_manager_proxy_new_for_bus (G_BUS_TYPE_SESSION,
- G_DBUS_PROXY_FLAGS_NONE,
- "org.gnome.SessionManager",
- "/org/gnome/SessionManager",
- priv->cancellable,
- (GAsyncReadyCallback)
on_got_session_manager_to_log_out,
- self);
- return;
- }
+ if (priv->session_manager == NULL)
+ priv->session_manager = gnome_settings_session_get_session_proxy ();
gsd_session_manager_call_logout (priv->session_manager,
GSD_SESSION_MANAGER_LOGOUT_MODE_FORCE,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]