aboutsummaryrefslogtreecommitdiff
path: root/src/user-menu-mgr.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/user-menu-mgr.c')
-rw-r--r--src/user-menu-mgr.c19
1 files changed, 7 insertions, 12 deletions
diff --git a/src/user-menu-mgr.c b/src/user-menu-mgr.c
index e7c6348..89fb841 100644
--- a/src/user-menu-mgr.c
+++ b/src/user-menu-mgr.c
@@ -57,9 +57,8 @@ static void activate_user_accounts (DbusmenuMenuitem *mi,
guint timestamp,
gpointer user_data);
static void user_menu_mgr_rebuild_items (UserMenuMgr *self);
-static void user_change (UsersServiceDbus *service,
- const gchar *user_id,
- gpointer user_data);
+static void on_user_list_changed (UsersServiceDbus *service,
+ UserMenuMgr * umm);
static void on_guest_logged_in_changed (UsersServiceDbus * users_dbus,
UserMenuMgr * self);
@@ -85,10 +84,8 @@ user_menu_mgr_init (UserMenuMgr *self)
self->lockdown_settings = g_settings_new (LOCKDOWN_SCHEMA);
self->users_dbus_interface = g_object_new (USERS_SERVICE_DBUS_TYPE, NULL);
self->root_item = dbusmenu_menuitem_new ();
- g_signal_connect (self->users_dbus_interface, "user-added",
- G_CALLBACK (user_change), self);
- g_signal_connect (self->users_dbus_interface, "user-deleted",
- G_CALLBACK (user_change), self);
+ g_signal_connect (self->users_dbus_interface, "user-list-changed",
+ G_CALLBACK (on_user_list_changed), self);
g_signal_connect (self->users_dbus_interface, "user-logged-in-changed",
G_CALLBACK(on_user_logged_in_changed), self);
g_signal_connect (self->users_dbus_interface, "guest-logged-in-changed",
@@ -455,12 +452,10 @@ activate_user_accounts (DbusmenuMenuitem *mi,
/* Signal called when a user is added.
It updates the count and rebuilds the menu */
static void
-user_change (UsersServiceDbus *service G_GNUC_UNUSED,
- const gchar *user_id G_GNUC_UNUSED,
- gpointer user_data)
+on_user_list_changed (UsersServiceDbus * service G_GNUC_UNUSED,
+ UserMenuMgr * user_mgr)
{
- UserMenuMgr* user_mgr = USER_MENU_MGR (user_data);
- g_return_if_fail (user_mgr != NULL);
+ g_return_if_fail (USER_IS_MENU_MGR(user_mgr));
user_menu_mgr_rebuild_items (user_mgr);
}