On Tue, Mar 08, 2016 at 03:42:42PM +1000, Peter Hutterer wrote:
> Wrong use of the mask here caused a beep whenever a key was rejected but also
> when it was released after being accepted. Fix the mask to check for the
> correct enabled controls.
>
> Signed-off-by: Peter Hutterer <[email protected]>
ping? anyone? beeps are pretty exciting stuff, especially to review.
Cheers,
Peter
> ---
> xkb/xkbAccessX.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/xkb/xkbAccessX.c b/xkb/xkbAccessX.c
> index 02e820b..892cb30 100644
> --- a/xkb/xkbAccessX.c
> +++ b/xkb/xkbAccessX.c
> @@ -618,6 +618,7 @@ AccessXFilterReleaseEvent(DeviceEvent *event,
> DeviceIntPtr keybd)
> if (ctrls->enabled_ctrls & XkbSlowKeysMask) {
> xkbAccessXNotify ev;
> unsigned beep_type;
> + unsigned mask;
>
> ev.keycode = key;
> ev.slowKeysDelay = ctrls->slow_keys_delay;
> @@ -625,14 +626,16 @@ AccessXFilterReleaseEvent(DeviceEvent *event,
> DeviceIntPtr keybd)
> if (BitIsOn(keybd->key->down, key) || (xkbi->mouseKey == key)) {
> ev.detail = XkbAXN_SKRelease;
> beep_type = _BEEP_SLOW_RELEASE;
> + mask = XkbAX_SKReleaseFBMask;
> }
> else {
> ev.detail = XkbAXN_SKReject;
> beep_type = _BEEP_SLOW_REJECT;
> + mask = XkbAX_SKRejectFBMask;
> ignoreKeyEvent = TRUE;
> }
> XkbSendAccessXNotify(keybd, &ev);
> - if (XkbAX_NeedFeedback(ctrls, XkbAX_SKRejectFBMask)) {
> + if (XkbAX_NeedFeedback(ctrls, mask)) {
> XkbDDXAccessXBeep(keybd, beep_type, XkbSlowKeysMask);
> }
> if (xkbi->slowKey == key)
> --
> 2.5.0
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: https://lists.x.org/mailman/listinfo/xorg-devel