[PATCH weston] input: don't send to clients key events eaten by bindings

Bill Spitzak spitzak at gmail.com
Wed Nov 5 13:16:31 PST 2014

It seems like it would be easy for the client to not repeat the key if 
it did not see the key-down event. I find it pretty amazing that you 
duplicated about the only bug that having clients do the repeat rather 
than the compositor solves.

Any patch that removes the fact that the key is still being held down by 
the user from the key array is incorrect.

>> - open xterm (via Xwayland)
>> - open weston-terminal
>> - press Mod
>> - press 'k' (Mod+k is a weston hotkey for killing an app)
>> - weston-terminal gets killed, focus moves to xterm
>> - before xterm gets killed too, release Mod
>> - 'k' starts repeating in xterm until you release 'k'
>> The premise here is that since 'k' was the final key that triggered a
>> keybinding, the press and release of 'k' must not be sent to any client.
>> This obviously fails in the above experiment, not via a key-press event
>> but via the list of pressed keys in keyboard enter event. (You cannot
>> see it with WAYLAND_DEBUG, because it cannot decode wl_array type.)
>> So, problem confirmed.

More information about the wayland-devel mailing list