Your message dated Sun, 24 Mar 2013 21:26:50 +0000
with message-id <1364160410.24071.37.ca...@jacala.jungle.funky-badger.org>
and subject line Re: Bug#699817: unblock:
gnome-settings-daemon/3.4.2+git20121218.7c1322-3
has caused the Debian Bug report #699817,
regarding unblock: gnome-settings-daemon/3.4.2+git20121218.7c1322-3
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)
--
699817: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=699817
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian....@packages.debian.org
Usertags: unblock
Please unblock package gnome-settings-daemon for a GDM-related bug fix.
gnome-settings-daemon (3.4.2+git20121218.7c1322-3) unstable; urgency=low
* 06_a11y_gdm_leak.patch: backported from git master. Reset keyboard
accessibility settings when shutting down the settings daemon. This
avoids leaking them from the GDM session to the user’s.
Closes: #682581.
+ 06_a11y_macro.patch: a bit of refactoring that the previous patch
depends on.
unblock gnome-settings-daemon/3.4.2+git20121218.7c1322-3
Thanks,
--
.''`. Josselin Mouette
: :' :
`. `'
`-
>From ae36405207ba5ef0a0c7ea6b154e80d8be3e675c Mon Sep 17 00:00:00 2001
From: Bastien Nocera <had...@hadess.net>
Date: Mon, 28 Jan 2013 16:59:21 +0000
Subject: a11y-keyboard: Disable everything on exit if no settings changed
The default setting in GDM is to have the keys enablable
through keyboard shortcuts, and this gets inherited by the
user sessions.
The problem is that non-GNOME users won't have anything
changing those defaults back to their expected values
(so that Slow Keys don't triggered for example), and this
causes problems:
https://bugzilla.redhat.com/show_bug.cgi?id=816764
If the user doesn't change anything to the defaults in the GDM
session, we revert to the pre-"GNOME session" values.
https://bugzilla.gnome.org/show_bug.cgi?id=685063
---
Index: gnome-settings-daemon-3.4.2+git20121218.7c1322/plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c
===================================================================
--- gnome-settings-daemon-3.4.2+git20121218.7c1322.orig/plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c 2013-02-05 16:38:44.911939950 +0100
+++ gnome-settings-daemon-3.4.2+git20121218.7c1322/plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c 2013-02-05 16:38:44.903939914 +0100
@@ -63,6 +63,8 @@ struct GsdA11yKeyboardManagerPrivate
GtkWidget *preferences_dialog;
GtkStatusIcon *status_icon;
+ XkbDescRec *desc;
+
GSettings *settings;
NotifyNotification *notification;
@@ -950,6 +952,9 @@ start_a11y_keyboard_idle_cb (GsdA11yKeyb
set_devicepresence_handler (manager);
+ /* Get the original configuration from the server */
+ manager->priv->desc = get_xkb_desc_rec (manager);
+
event_mask = XkbControlsNotifyMask;
event_mask |= XkbAccessXNotifyMask; /* make default when AXN_AXKWarning works */
@@ -995,6 +1000,26 @@ gsd_a11y_keyboard_manager_stop (GsdA11yK
g_debug ("Stopping a11y_keyboard manager");
+ if (p->desc != NULL) {
+ XkbDescRec *desc;
+
+ desc = get_xkb_desc_rec (manager);
+ if (desc != NULL) {
+ if (p->desc->ctrls->enabled_ctrls != desc->ctrls->enabled_ctrls) {
+ gdk_error_trap_push ();
+ XkbSetControls (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
+ DEFAULT_XKB_SET_CONTROLS_MASK,
+ p->desc);
+
+ XSync (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), FALSE);
+ gdk_error_trap_pop_ignored ();
+ }
+ XkbFreeKeyboard (desc, XkbAllComponentsMask, True);
+ }
+ XkbFreeKeyboard (p->desc, XkbAllComponentsMask, True);
+ p->desc = NULL;
+ }
+
if (p->start_idle_id != 0) {
g_source_remove (p->start_idle_id);
p->start_idle_id = 0;
>From 0bc81bad702d314cfc975ab4df58817a45a6dd05 Mon Sep 17 00:00:00 2001
From: Bastien Nocera <had...@hadess.net>
Date: Mon, 28 Jan 2013 16:58:50 +0000
Subject: a11y-keyboard: Use macro for everything mask
Less to copy/paste
---
diff --git a/plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c b/plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c
index 7acd274..33e4665 100644
--- a/plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c
+++ b/plugins/a11y-keyboard/gsd-a11y-keyboard-manager.c
@@ -62,6 +62,17 @@ struct GsdA11yKeyboardManagerPrivate
NotifyNotification *notification;
};
+#define DEFAULT_XKB_SET_CONTROLS_MASK XkbSlowKeysMask | \
+ XkbBounceKeysMask | \
+ XkbStickyKeysMask | \
+ XkbMouseKeysMask | \
+ XkbMouseKeysAccelMask | \
+ XkbAccessXKeysMask | \
+ XkbAccessXTimeoutMask | \
+ XkbAccessXFeedbackMask | \
+ XkbControlsEnabledMask
+
+
static void gsd_a11y_keyboard_manager_class_init (GsdA11yKeyboardManagerClass *klass);
static void gsd_a11y_keyboard_manager_init (GsdA11yKeyboardManager *a11y_keyboard_manager);
static void gsd_a11y_keyboard_manager_finalize (GObject *object);
@@ -306,15 +317,7 @@ set_server_from_gsettings (GsdA11yKeyboardManager *manager)
gdk_error_trap_push ();
XkbSetControls (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()),
- XkbSlowKeysMask |
- XkbBounceKeysMask |
- XkbStickyKeysMask |
- XkbMouseKeysMask |
- XkbMouseKeysAccelMask |
- XkbAccessXKeysMask |
- XkbAccessXTimeoutMask |
- XkbAccessXFeedbackMask |
- XkbControlsEnabledMask,
+ DEFAULT_XKB_SET_CONTROLS_MASK,
desc);
XkbFreeKeyboard (desc, XkbAllComponentsMask, True);
--
cgit v0.9.0.2
--- End Message ---
--- Begin Message ---
On Tue, 2013-02-05 at 16:47 +0100, Josselin Mouette wrote:
> gnome-settings-daemon (3.4.2+git20121218.7c1322-3) unstable; urgency=low
>
> * 06_a11y_gdm_leak.patch: backported from git master. Reset keyboard
> accessibility settings when shutting down the settings daemon. This
> avoids leaking them from the GDM session to the user’s.
> Closes: #682581.
> + 06_a11y_macro.patch: a bit of refactoring that the previous patch
> depends on.
Unblocked; thanks.
Regards,
Adam
--- End Message ---