summaryrefslogtreecommitdiff
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
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.
-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)
{