summaryrefslogtreecommitdiff
path: root/plugins/xsettings/msd-xsettings-manager.c
diff options
context:
space:
mode:
authorMonsta <[email protected]>2015-02-18 18:08:00 +0300
committerStefano Karapetsas <[email protected]>2015-02-25 23:34:23 +0100
commit46f3411f843b502b07d616cd81d72c172507bfaf (patch)
treeaaf72695fd3bbfa6789ec754a0e9a8fa36f1f589 /plugins/xsettings/msd-xsettings-manager.c
parent03c04e009fa73e43763b7e9f91031a2d3c1f5407 (diff)
downloadmate-settings-daemon-46f3411f843b502b07d616cd81d72c172507bfaf.tar.bz2
mate-settings-daemon-46f3411f843b502b07d616cd81d72c172507bfaf.tar.xz
xsettings plugin: first connect to settings, then read them.
fixes the issue with GLib >= 2.43, https://git.gnome.org/browse/glib/commit/?id=8ff5668a458344da22d30491e3ce726d861b3619 Closes https://github.com/mate-desktop/mate-settings-daemon/pull/95
Diffstat (limited to 'plugins/xsettings/msd-xsettings-manager.c')
-rw-r--r--plugins/xsettings/msd-xsettings-manager.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/plugins/xsettings/msd-xsettings-manager.c b/plugins/xsettings/msd-xsettings-manager.c
index 61f5999..6c635c4 100644
--- a/plugins/xsettings/msd-xsettings-manager.c
+++ b/plugins/xsettings/msd-xsettings-manager.c
@@ -683,6 +683,13 @@ mate_xsettings_manager_start (MateXSettingsManager *manager,
g_hash_table_insert (manager->priv->gsettings,
SOUND_SCHEMA, g_settings_new (SOUND_SCHEMA));
+ list = g_hash_table_get_values (manager->priv->gsettings);
+ for (l = list; l != NULL; l = l->next) {
+ g_signal_connect_object (G_OBJECT (l->data), "changed",
+ G_CALLBACK (xsettings_callback), manager, 0);
+ }
+ g_list_free (list);
+
for (i = 0; i < G_N_ELEMENTS (translations); i++) {
GVariant *val;
GSettings *gsettings;
@@ -701,13 +708,6 @@ mate_xsettings_manager_start (MateXSettingsManager *manager,
g_variant_unref (val);
}
- list = g_hash_table_get_values (manager->priv->gsettings);
- for (l = list; l != NULL; l = l->next) {
- g_signal_connect_object (G_OBJECT (l->data), "changed",
- G_CALLBACK (xsettings_callback), manager, 0);
- }
- g_list_free (list);
-
manager->priv->gsettings_font = g_settings_new (FONT_RENDER_SCHEMA);
g_signal_connect (manager->priv->gsettings_font, "changed", G_CALLBACK (xft_callback), manager);
update_xft_settings (manager, manager->priv->gsettings_font);