diff options
author | Simon Steinbeiss <simon.steinbeiss@elfenbeinturm.at> | 2019-05-12 23:58:24 +0200 |
---|---|---|
committer | Simon Steinbeiss <simon.steinbeiss@elfenbeinturm.at> | 2019-05-13 22:10:28 +0200 |
commit | ae4ddb30c83d6e0a12cc151b5bc84aca7befcb8b (patch) | |
tree | e0327ad0fc5c0e1e7166fa43d4a90c7bcefc3d2b | |
parent | 08468d555a74fa8c3a23bea48b9b76cbaa043f8f (diff) | |
download | xfce4-session-ae4ddb30c83d6e0a12cc151b5bc84aca7befcb8b.tar.gz |
Update session name in xfconf after chooser
Before this commit the session manager internally would know the
currently running session but never write this to the corresponding
xfconf setting.
-rw-r--r-- | xfce4-session/xfsm-manager.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/xfce4-session/xfsm-manager.c b/xfce4-session/xfsm-manager.c index ea9a0e94..1b4d072d 100644 --- a/xfce4-session/xfsm-manager.c +++ b/xfce4-session/xfsm-manager.c @@ -144,7 +144,8 @@ static void xfsm_manager_cancel_client_save_timeout (XfsmManager *manager, static gboolean xfsm_manager_save_timeout (gpointer user_data); static void xfsm_manager_load_settings (XfsmManager *manager, XfconfChannel *channel); -static gboolean xfsm_manager_load_session (XfsmManager *manager); +static gboolean xfsm_manager_load_session (XfsmManager *manager, + XfconfChannel *channel); static void xfsm_manager_dbus_class_init (XfsmManagerClass *klass); static void xfsm_manager_dbus_init (XfsmManager *manager, GDBusConnection *connection); @@ -471,7 +472,8 @@ xfsm_manager_choose_session (XfsmManager *manager, static gboolean -xfsm_manager_load_session (XfsmManager *manager) +xfsm_manager_load_session (XfsmManager *manager, + XfconfChannel *channel) { XfsmProperties *properties; gchar buffer[1024]; @@ -500,6 +502,7 @@ xfsm_manager_load_session (XfsmManager *manager) g_snprintf (buffer, 1024, "Session: %s", manager->session_name); xfsm_verbose ("loading %s\n", buffer); + xfconf_channel_set_string (channel, "/general/SessionName", manager->session_name); xfce_rc_set_group (rc, buffer); count = xfce_rc_read_int_entry (rc, "Count", 0); @@ -747,7 +750,7 @@ xfsm_manager_load_settings (XfsmManager *manager, manager->session_chooser = xfconf_channel_get_bool (channel, "/chooser/AlwaysDisplay", FALSE); - session_loaded = xfsm_manager_load_session (manager); + session_loaded = xfsm_manager_load_session (manager, channel); if (session_loaded) { |