add some upstream patches

This commit is contained in:
raveit65 2015-03-11 15:40:51 +01:00
parent ad2d00ae79
commit bc805ca4e7
2 changed files with 117 additions and 0 deletions

View File

@ -0,0 +1,86 @@
diff --git a/plugins/a11y-keyboard/msd-a11y-preferences-dialog.c b/plugins/a11y-keyboard/msd-a11y-preferences-dialog.c
index 72d42ff..675b993 100644
--- a/plugins/a11y-keyboard/msd-a11y-preferences-dialog.c
+++ b/plugins/a11y-keyboard/msd-a11y-preferences-dialog.c
@@ -458,7 +458,7 @@ on_sticky_keys_checkbutton_toggled (GtkToggleButton *button,
static void
on_bounce_keys_checkbutton_toggled (GtkToggleButton *button,
- MsdA11yPreferencesDialog *dialog)
+ MsdA11yPreferencesDialog *dialog)
{
config_set_bounce_keys (dialog, gtk_toggle_button_get_active (button));
}
@@ -649,7 +649,7 @@ setup_dialog (MsdA11yPreferencesDialog *dialog,
g_signal_connect (widget,
"toggled",
G_CALLBACK (on_sticky_keys_checkbutton_toggled),
- NULL);
+ dialog);
enabled = config_get_sticky_keys (dialog, &is_writable);
ui_set_sticky_keys (dialog, enabled);
if (! is_writable) {
@@ -662,7 +662,7 @@ setup_dialog (MsdA11yPreferencesDialog *dialog,
g_signal_connect (widget,
"toggled",
G_CALLBACK (on_bounce_keys_checkbutton_toggled),
- NULL);
+ dialog);
enabled = config_get_bounce_keys (dialog, &is_writable);
ui_set_bounce_keys (dialog, enabled);
if (! is_writable) {
@@ -675,7 +675,7 @@ setup_dialog (MsdA11yPreferencesDialog *dialog,
g_signal_connect (widget,
"toggled",
G_CALLBACK (on_slow_keys_checkbutton_toggled),
- NULL);
+ dialog);
enabled = config_get_slow_keys (dialog, &is_writable);
ui_set_slow_keys (dialog, enabled);
if (! is_writable) {
@@ -688,7 +688,7 @@ setup_dialog (MsdA11yPreferencesDialog *dialog,
g_signal_connect (widget,
"toggled",
G_CALLBACK (on_high_contrast_checkbutton_toggled),
- NULL);
+ dialog);
enabled = config_get_high_contrast (dialog, &is_writable);
ui_set_high_contrast (dialog, enabled);
if (! is_writable) {
@@ -701,7 +701,7 @@ setup_dialog (MsdA11yPreferencesDialog *dialog,
g_signal_connect (widget,
"toggled",
G_CALLBACK (on_at_screen_keyboard_checkbutton_toggled),
- NULL);
+ dialog);
enabled = config_get_at_screen_keyboard (dialog, &is_writable);
ui_set_at_screen_keyboard (dialog, enabled);
if (! is_writable) {
@@ -720,7 +720,7 @@ setup_dialog (MsdA11yPreferencesDialog *dialog,
g_signal_connect (widget,
"toggled",
G_CALLBACK (on_at_screen_reader_checkbutton_toggled),
- NULL);
+ dialog);
enabled = config_get_at_screen_reader (dialog, &is_writable);
ui_set_at_screen_reader (dialog, enabled);
if (! is_writable) {
@@ -739,7 +739,7 @@ setup_dialog (MsdA11yPreferencesDialog *dialog,
g_signal_connect (widget,
"toggled",
G_CALLBACK (on_at_screen_magnifier_checkbutton_toggled),
- NULL);
+ dialog);
enabled = config_get_at_screen_magnifier (dialog, &is_writable);
ui_set_at_screen_magnifier (dialog, enabled);
if (! is_writable) {
@@ -758,7 +758,7 @@ setup_dialog (MsdA11yPreferencesDialog *dialog,
g_signal_connect (widget,
"toggled",
G_CALLBACK (on_large_print_checkbutton_toggled),
- NULL);
+ dialog);
enabled = config_get_large_print (&is_writable);
ui_set_large_print (dialog, enabled);
if (! is_writable) {

View File

@ -0,0 +1,31 @@
diff --git a/plugins/keyboard/msd-keyboard-manager.c b/plugins/keyboard/msd-keyboard-manager.c
index a4b97e5..8d261b6 100644
--- a/plugins/keyboard/msd-keyboard-manager.c
+++ b/plugins/keyboard/msd-keyboard-manager.c
@@ -267,10 +267,6 @@ apply_settings (GSettings *settings,
bell_volume = (volume_string && !strcmp (volume_string, "on")) ? 50 : 0;
g_free (volume_string);
-#ifdef HAVE_X11_EXTENSIONS_XKB_H
- rnumlock = g_settings_get_boolean (settings, KEY_NUMLOCK_REMEMBER);
-#endif /* HAVE_X11_EXTENSIONS_XKB_H */
-
gdk_error_trap_push ();
if (repeat) {
gboolean rate_set = FALSE;
@@ -306,8 +302,12 @@ apply_settings (GSettings *settings,
&kbdcontrol);
#ifdef HAVE_X11_EXTENSIONS_XKB_H
- if (manager->priv->have_xkb && rnumlock) {
- numlock_set_xkb_state (numlock_get_settings_state (settings));
+ rnumlock = g_settings_get_boolean (settings, KEY_NUMLOCK_REMEMBER);
+
+ if (rnumlock == 0 || key == NULL) {
+ if (manager->priv->have_xkb && rnumlock) {
+ numlock_set_xkb_state (numlock_get_settings_state (settings));
+ }
}
#endif /* HAVE_X11_EXTENSIONS_XKB_H */