[Xfce4-commits] <xfce4-settings:master> Make sure AccessXKeys control is disabled by default.
Jérôme Guelfucci
noreply at xfce.org
Sun Aug 19 22:36:01 CEST 2012
Updating branch refs/heads/master
to 153b19efaff6577b80d1d396c35c4dd688512da7 (commit)
from e66a10099be1bfe88ba9b37ce05ed1d420e1d099 (commit)
commit 153b19efaff6577b80d1d396c35c4dd688512da7
Author: Jérôme Guelfucci <jeromeg at xfce.org>
Date: Sun Aug 19 22:30:44 2012 +0200
Make sure AccessXKeys control is disabled by default.
Also add an Xfconf property to configure that, the UI still needs to be
written.
xfsettingsd/accessibility.c | 26 ++++++++++++++++++++++++--
1 files changed, 24 insertions(+), 2 deletions(-)
diff --git a/xfsettingsd/accessibility.c b/xfsettingsd/accessibility.c
index edaf1d2..f79d130 100644
--- a/xfsettingsd/accessibility.c
+++ b/xfsettingsd/accessibility.c
@@ -127,7 +127,7 @@ xfce_accessibility_helper_init (XfceAccessibilityHelper *helper)
g_signal_connect (G_OBJECT (helper->channel), "property-changed", G_CALLBACK (xfce_accessibility_helper_channel_property_changed), helper);
/* restore the xbd configuration */
- xfce_accessibility_helper_set_xkb (helper, XkbStickyKeysMask | XkbSlowKeysMask | XkbBounceKeysMask | XkbMouseKeysMask);
+ xfce_accessibility_helper_set_xkb (helper, XkbStickyKeysMask | XkbSlowKeysMask | XkbBounceKeysMask | XkbMouseKeysMask | XkbAccessXKeysMask);
#ifdef HAVE_LIBNOTIFY
/* setup a connection with the notification daemon */
@@ -188,7 +188,8 @@ xfce_accessibility_helper_set_xkb (XfceAccessibilityHelper *helper,
if (HAS_FLAG (mask, XkbStickyKeysMask) ||
HAS_FLAG (mask, XkbSlowKeysMask) ||
HAS_FLAG (mask, XkbBounceKeysMask) ||
- HAS_FLAG (mask, XkbMouseKeysMask))
+ HAS_FLAG (mask, XkbMouseKeysMask) ||
+ HAS_FLAG (mask, XkbAccessXKeysMask))
SET_FLAG (mask, XkbAccessXTimeoutMask);
/* add the mouse keys values mask if needed */
@@ -198,6 +199,27 @@ xfce_accessibility_helper_set_xkb (XfceAccessibilityHelper *helper,
/* load the xkb controls into the structure */
XkbGetControls (GDK_DISPLAY (), mask, xkb);
+ /* AccessXKeys */
+ if (HAS_FLAG (mask, XkbAccessXKeysMask))
+ {
+ if (xfconf_channel_get_bool (helper->channel, "/AccessXKeys", FALSE))
+ {
+ SET_FLAG (xkb->ctrls->enabled_ctrls, XkbAccessXKeysMask);
+ UNSET_FLAG (xkb->ctrls->axt_ctrls_mask, XkbAccessXKeysMask);
+ UNSET_FLAG (xkb->ctrls->axt_ctrls_values, XkbAccessXKeysMask);
+
+ xfsettings_dbg (XFSD_DEBUG_ACCESSIBILITY, "AccessXKeys enabled");
+ }
+ else
+ {
+ UNSET_FLAG (xkb->ctrls->enabled_ctrls, XkbAccessXKeysMask);
+ SET_FLAG (xkb->ctrls->axt_ctrls_mask, XkbAccessXKeysMask);
+ UNSET_FLAG (xkb->ctrls->axt_ctrls_values, XkbAccessXKeysMask);
+
+ xfsettings_dbg (XFSD_DEBUG_ACCESSIBILITY, "AccessXKeys disabled");
+ }
+ }
+
/* Sticky keys */
if (HAS_FLAG (mask, XkbStickyKeysMask))
{
More information about the Xfce4-commits
mailing list