summaryrefslogtreecommitdiff
path: root/xfce4-session
diff options
context:
space:
mode:
authorSimon Steinbeiss <simon.steinbeiss@elfenbeinturm.at>2019-05-12 23:58:24 +0200
committerSimon Steinbeiss <simon.steinbeiss@elfenbeinturm.at>2019-05-13 22:10:28 +0200
commitae4ddb30c83d6e0a12cc151b5bc84aca7befcb8b (patch)
treee0327ad0fc5c0e1e7166fa43d4a90c7bcefc3d2b /xfce4-session
parent08468d555a74fa8c3a23bea48b9b76cbaa043f8f (diff)
downloadxfce4-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.
Diffstat (limited to 'xfce4-session')
-rw-r--r--xfce4-session/xfsm-manager.c9
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)
{