From 8dddf3fd91765a2811732e1c5dc4a533e55bc5cb Mon Sep 17 00:00:00 2001 From: Ted Gould Date: Tue, 16 Mar 2010 21:52:29 -0500 Subject: When a session is added or removed we need to change the state of that user item. --- src/users-service-dbus.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/users-service-dbus.c b/src/users-service-dbus.c index d0b52a9..f3952ed 100644 --- a/src/users-service-dbus.c +++ b/src/users-service-dbus.c @@ -498,6 +498,10 @@ do_add_session (UsersServiceDbus *service, g_debug ("Adding session %s", ssid); user->sessions = g_list_prepend (user->sessions, g_strdup (ssid)); + + if (user->menuitem != NULL) { + dbusmenu_menuitem_property_set_bool(user->menuitem, USER_ITEM_PROP_LOGGED_IN, TRUE); + } } else { @@ -599,6 +603,9 @@ seat_proxy_session_removed (DBusGProxy *seat_proxy, g_free (l->data); user->sessions = g_list_delete_link (user->sessions, l); + if (user->menuitem != NULL && user->sessions == NULL) { + dbusmenu_menuitem_property_set_bool(user->menuitem, USER_ITEM_PROP_LOGGED_IN, FALSE); + } } else { -- cgit v1.2.3