From ce070c33a480fdb69412e3b62a1c736bbed5ff0e Mon Sep 17 00:00:00 2001 From: raveit65 Date: Thu, 20 Aug 2015 10:31:22 +0200 Subject: [PATCH] another fix for glib2/gsettings regression --- mate-settings-daemon.spec | 12 ++++++- ...atekbd-GSettings-before-reading-them.patch | 35 ++++++++++++++++++ ...ble-to-better-match-libmatekbd-stuff.patch | 36 +++++++++++++++++++ 3 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 mate-settings-daemon_connect-to-libmatekbd-GSettings-before-reading-them.patch create mode 100644 mate-settings-daemon_rename-variable-to-better-match-libmatekbd-stuff.patch diff --git a/mate-settings-daemon.spec b/mate-settings-daemon.spec index 4bdfb1c..6388449 100644 --- a/mate-settings-daemon.spec +++ b/mate-settings-daemon.spec @@ -15,7 +15,7 @@ Name: mate-settings-daemon Version: %{branch}.1 %if 0%{?rel_build} -Release: 1%{?dist} +Release: 2%{?dist} %else Release: 0.1%{?git_rel}%{?dist} %endif @@ -29,6 +29,10 @@ URL: http://mate-desktop.org # Source for snapshot-builds. %{!?rel_build:Source0: http://git.mate-desktop.org/%{name}/snapshot/%{name}-%{commit}.tar.xz#/%{git_tar}} +# https://github.com/mate-desktop/mate-settings-daemon/pull/112 +Patch0: mate-settings-daemon_rename-variable-to-better-match-libmatekbd-stuff.patch +Patch1: mate-settings-daemon_connect-to-libmatekbd-GSettings-before-reading-them.patch + BuildRequires: dbus-glib-devel BuildRequires: dconf-devel BuildRequires: desktop-file-utils @@ -70,6 +74,9 @@ under it. %prep %setup -q%{!?rel_build:n %{name}-%{commit}} +%patch0 -p1 -b .rename-variable +%patch1 -p1 -b .connect-to + %if 0%{?rel_build} #NOCONFIGURE=1 ./autogen.sh %else # 0%{?rel_build} @@ -145,6 +152,9 @@ fi %changelog +* Wed Aug 19 2015 Wolfgang Ulbrich - 1.10.1-2 +- another fix for glib2/gsettings regression + * Tue Jul 14 2015 Wolfgang Ulbrich - 1.10.1.1 - update to 1.10.1 release diff --git a/mate-settings-daemon_connect-to-libmatekbd-GSettings-before-reading-them.patch b/mate-settings-daemon_connect-to-libmatekbd-GSettings-before-reading-them.patch new file mode 100644 index 0000000..d30a4e0 --- /dev/null +++ b/mate-settings-daemon_connect-to-libmatekbd-GSettings-before-reading-them.patch @@ -0,0 +1,35 @@ +diff --git a/plugins/keyboard/msd-keyboard-xkb.c b/plugins/keyboard/msd-keyboard-xkb.c +index a406fe5..bb62f2b 100644 +--- a/plugins/keyboard/msd-keyboard-xkb.c ++++ b/plugins/keyboard/msd-keyboard-xkb.c +@@ -582,14 +582,25 @@ msd_keyboard_xkb_init (MsdKeyboardManager * kbd_manager) + settings_kbd = g_settings_new (MATEKBD_KBD_SCHEMA); + + matekbd_desktop_config_init (¤t_desktop_config, +- xkl_engine); ++ xkl_engine); + matekbd_keyboard_config_init (¤t_kbd_config, +- xkl_engine); ++ xkl_engine); ++ + xkl_engine_backup_names_prop (xkl_engine); + msd_keyboard_xkb_analyze_sysconfig (); + +- g_signal_connect (settings_desktop, "changed", G_CALLBACK(apply_desktop_settings_cb), NULL); +- g_signal_connect (settings_kbd, "changed", G_CALLBACK(apply_xkb_settings_cb), NULL); ++ matekbd_desktop_config_start_listen (¤t_desktop_config, ++ G_CALLBACK (apply_desktop_settings_cb), ++ NULL); ++ ++ matekbd_keyboard_config_start_listen (¤t_kbd_config, ++ G_CALLBACK (apply_xkb_settings_cb), ++ NULL); ++ ++ g_signal_connect (settings_desktop, "changed", ++ G_CALLBACK (apply_desktop_settings_cb), NULL); ++ g_signal_connect (settings_kbd, "changed", ++ G_CALLBACK (apply_xkb_settings_cb), NULL); + + gdk_window_add_filter (NULL, (GdkFilterFunc) + msd_keyboard_xkb_evt_filter, NULL); + diff --git a/mate-settings-daemon_rename-variable-to-better-match-libmatekbd-stuff.patch b/mate-settings-daemon_rename-variable-to-better-match-libmatekbd-stuff.patch new file mode 100644 index 0000000..cccccb8 --- /dev/null +++ b/mate-settings-daemon_rename-variable-to-better-match-libmatekbd-stuff.patch @@ -0,0 +1,36 @@ +diff --git a/plugins/keyboard/msd-keyboard-xkb.c b/plugins/keyboard/msd-keyboard-xkb.c +index b126fa1..a406fe5 100644 +--- a/plugins/keyboard/msd-keyboard-xkb.c ++++ b/plugins/keyboard/msd-keyboard-xkb.c +@@ -58,7 +58,7 @@ static GSettings* settings_kbd; + static XklEngine* xkl_engine; + static XklConfigRegistry* xkl_registry = NULL; + +-static MatekbdDesktopConfig current_config; ++static MatekbdDesktopConfig current_desktop_config; + static MatekbdKeyboardConfig current_kbd_config; + + /* never terminated */ +@@ -143,10 +143,10 @@ apply_desktop_settings (void) + return; + + msd_keyboard_manager_apply_settings (manager); +- matekbd_desktop_config_load_from_gsettings (¤t_config); ++ matekbd_desktop_config_load_from_gsettings (¤t_desktop_config); + /* again, probably it would be nice to compare things + before activating them */ +- matekbd_desktop_config_activate (¤t_config); ++ matekbd_desktop_config_activate (¤t_desktop_config); + + show_leds = g_settings_get_boolean (settings_desktop, DUPLICATE_LEDS_KEY); + for (i = sizeof (indicator_icons) / sizeof (indicator_icons[0]); +@@ -581,7 +581,7 @@ msd_keyboard_xkb_init (MsdKeyboardManager * kbd_manager) + settings_desktop = g_settings_new (MATEKBD_DESKTOP_SCHEMA); + settings_kbd = g_settings_new (MATEKBD_KBD_SCHEMA); + +- matekbd_desktop_config_init (¤t_config, ++ matekbd_desktop_config_init (¤t_desktop_config, + xkl_engine); + matekbd_keyboard_config_init (¤t_kbd_config, + xkl_engine); +