Xpra: Ticket #1716: per user keyboard state

The server has a single instance of the keyboard state for all users connected, see #1373, but some of the attributes should be per-client (ie: "layout-groups", see r17573) to support better key mapping with more exotic layouts.

Sun, 23 Sep 2018 05:34:56 GMT - Antoine Martin: status, milestone changed

See also #1027

Thu, 29 Nov 2018 08:01:47 GMT - Antoine Martin:

Could fix #2030.

Fri, 30 Nov 2018 15:21:56 GMT - Antoine Martin: priority changed

We can't control-c from the secondary client unless it uses the same modifier keys, the server log shows:

make_keymask_match: ignored as keynames_for_mod not assigned yet

Fri, 30 Nov 2018 16:59:04 GMT - Antoine Martin:

r21174 fixes the ignored as keynames_for_mod not assigned yet problem without splitting the keyboard class. This is probably too intrusive and risky to be backported.

The server keyboard object is actually already instantiated for every client in the input servers' parse_hello method: we call get_keyboard_config which returns an x11 KeyboardConfig object for x11 servers.

Thu, 06 Dec 2018 00:55:17 GMT - Antoine Martin:

r21178 moves the "keyboard-sync" flag to the per-user keyboard configuration.

Still TODO:

Fri, 08 Mar 2019 04:33:18 GMT - Antoine Martin: milestone changed

Can be dealt with as part of #1942

Wed, 12 Feb 2020 05:11:27 GMT - Antoine Martin: milestone changed

See also #1172

Sat, 23 Jan 2021 05:31:52 GMT - migration script:

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1716