I believe the most serious objection with this request is that it violates the XKB specification (see the description of SA_LockGroup in section 6.3 of "The X Keyboard Extension: Protocol Specification").
In the same specification, in section 4.0 of appendix D ("Protocol Encoding"), we see in the description of SA_LockGroup that there are still 5 unused bits in the flags field. My proposal in to use one of these bits decide whether to lock groups on press or release. By default (bit is zero), lock groups on press as the protocol specification demands. If the flag is one, lock groups on release. So by default, we would conform to the specification, and add the alternative behaviour as a new possibility beyond the specification. There are some usage implications. One must use 'Private' do create actions with the new flag set (until xkbcomp is updated as well), and one needs support in xkeyboard-config to make the new feature usable for non-XKB-hackers. -- You received this bug notification because you are a member of Desktop Packages, which is subscribed to xorg-server in Ubuntu. https://bugs.launchpad.net/bugs/36812 Title: Keyboard layout change on hotkeys press instead of release and do not work well with shortcuts Status in GNOME Control Center: Unknown Status in X.Org X server: In Progress Status in “control-center” package in Ubuntu: Invalid Status in “xorg-server” package in Ubuntu: Fix Released Bug description: This is a bug about shortcuts mapped to combinations which include each other. For example, if we have Ctrl+Shift (for keyboard layout) and Ctrl+Shift+N (to open a new terminal), then we are practically unable to use the second shortcut; this is what happens: Ctrl press (nothing happens) Shift press (keyboard layout change) N (a simple N appears, since a shortcut has already fired) The expected behavior is to fire shortcuts on the release (not on press) of the special keys (ctrl,shift,alt, etc) which is also how Windows behave. This is a serious problem for bilingual layouts, typically using Alt+Shift or Ctrl+Shift for keyboard layout change. For users being affected by this problem, the easiest solution for now is to add this PPA in your repositories: https://launchpad.net/~oded-geek/+archive/xorg-patches Practical summary of this bug for ubuntu developers (since reading 120 comments is impractical for most): This problem is a really old (since 2004) issue of the xkb part of xorg; the main discussion was made upstream in freedesktop-bugs #865. There has been a patch from Ilya Murav'jov for upstream (#55), and attached here (#61). Upstream xorg has refused to apply the patch, mainly because it "explicitly contradicts the (xkb) spec" (#84, #91). This patch has been reported to work for many people without any problems, and there is also a PPA by Oded Arbel (#95) where he maintains a patched version of the ubuntu xorg. The proper resolution of this bug would be to apply this patch to the upstream xorg, or at minimum to the official ubuntu xorg package. To manage notifications about this bug go to: https://bugs.launchpad.net/gnome-control-center/+bug/36812/+subscriptions -- Mailing list: https://launchpad.net/~desktop-packages Post to : desktop-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~desktop-packages More help : https://help.launchpad.net/ListHelp