Hi,

On 28 July 2011 05:36, Peter Hutterer <[email protected]> wrote:
> @@ -348,7 +348,11 @@ _XkbFilterLockState(       XkbSrvInfoPtr   xkbi,
>        filter->filter = _XkbFilterLockState;
>        filter->upAction = *pAction;
>        xkbi->state.locked_mods^= pAction->mods.mask;
> -       xkbi->setMods = pAction->mods.mask;
> +       /* Don't actually change setMods here. We're locking modifiers, so
> +        * the combined results of base + locked is the same regardless. By
> +        * not setting them, we get to release locked modifiers on the
> +        * second key _press_, not release (Bug 27903)
> +        */

This mostly seems OK to me, but breaks the LockNoLock state; I guess
you'd want to directly change base_mods in the other branch.  With
that fixed:
Acked-by: Daniel Stone <[email protected]>

Cheers,
Daniel
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to