summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMonsta <[email protected]>2015-02-24 16:34:34 +0300
committerStefano Karapetsas <[email protected]>2015-03-08 20:39:40 +0100
commit402a341512a40f6fc4994d0b1b626b0eb4d4c543 (patch)
tree61d53d6a9592425818b0a2b0243f2c40acda3b89
parent386f9341c851796af70bcc2a73e2a4d3ba79bd4f (diff)
downloadlibmatekbd-402a341512a40f6fc4994d0b1b626b0eb4d4c543.tar.bz2
libmatekbd-402a341512a40f6fc4994d0b1b626b0eb4d4c543.tar.xz
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/libmatekbd/pull/22
-rw-r--r--libmatekbd/matekbd-indicator.c17
-rw-r--r--libmatekbd/matekbd-status.c15
2 files changed, 17 insertions, 15 deletions
diff --git a/libmatekbd/matekbd-indicator.c b/libmatekbd/matekbd-indicator.c
index d500e85..3a71005 100644
--- a/libmatekbd/matekbd-indicator.c
+++ b/libmatekbd/matekbd-indicator.c
@@ -816,6 +816,15 @@ matekbd_indicator_global_init (void)
matekbd_keyboard_config_init (&globals.kbd_cfg, globals.engine);
matekbd_indicator_config_init (&globals.ind_cfg, globals.engine);
+ matekbd_desktop_config_start_listen (&globals.cfg,
+ (GCallback)
+ matekbd_indicator_cfg_changed,
+ NULL);
+ matekbd_indicator_config_start_listen (&globals.ind_cfg,
+ (GCallback)
+ matekbd_indicator_ind_cfg_changed,
+ NULL);
+
matekbd_desktop_config_load_from_gsettings (&globals.cfg);
matekbd_desktop_config_activate (&globals.cfg);
@@ -836,14 +845,6 @@ matekbd_indicator_global_init (void)
xklrec->variants);
g_object_unref (G_OBJECT (xklrec));
- matekbd_desktop_config_start_listen (&globals.cfg,
- (GCallback)
- matekbd_indicator_cfg_changed,
- NULL);
- matekbd_indicator_config_start_listen (&globals.ind_cfg,
- (GCallback)
- matekbd_indicator_ind_cfg_changed,
- NULL);
matekbd_indicator_start_listen ();
xkl_debug (100, "*** Inited globals *** \n");
diff --git a/libmatekbd/matekbd-status.c b/libmatekbd/matekbd-status.c
index b0c19be..3f6c613 100644
--- a/libmatekbd/matekbd-status.c
+++ b/libmatekbd/matekbd-status.c
@@ -778,6 +778,14 @@ matekbd_status_global_init (void)
matekbd_keyboard_config_init (&globals.kbd_cfg, globals.engine);
matekbd_indicator_config_init (&globals.ind_cfg, globals.engine);
+ matekbd_desktop_config_start_listen (&globals.cfg,
+ (GCallback)
+ matekbd_status_cfg_changed, NULL);
+ matekbd_indicator_config_start_listen (&globals.ind_cfg,
+ (GCallback)
+ matekbd_status_ind_cfg_changed,
+ NULL);
+
matekbd_desktop_config_load_from_gsettings (&globals.cfg);
matekbd_desktop_config_activate (&globals.cfg);
@@ -800,13 +808,6 @@ matekbd_status_global_init (void)
(const gchar **) xklrec->variants);
g_object_unref (G_OBJECT (xklrec));
- matekbd_desktop_config_start_listen (&globals.cfg,
- (GCallback)
- matekbd_status_cfg_changed, NULL);
- matekbd_indicator_config_start_listen (&globals.ind_cfg,
- (GCallback)
- matekbd_status_ind_cfg_changed,
- NULL);
matekbd_status_start_listen ();
xkl_debug (100, "*** Inited globals *** \n");