diff options
author | Bernhard Scheirle <bernhard+qt@scheirle.de> | 2016-06-18 14:30:15 +0200 |
---|---|---|
committer | Gatis Paeglis <gatis.paeglis@qt.io> | 2016-06-30 07:11:15 +0000 |
commit | db1a6ac357eaaa09690a8310bcb799c678836320 (patch) | |
tree | 12ddf49d545a682b19467722d9499c0a6fd44f28 /src/widgets/widgets/qdockwidget.cpp | |
parent | 2714d94ff4652e863f2e6005a138a2563d836f07 (diff) |
Fix shortcut handling for level three and above shortcuts
Calling `xkb_state_update_mask` with correctly set `depressed_mods` allows xkb to
return keys on level three or above (and not the equivalent level one key).
To preserve level two shortcuts (return equivalent level one key)
`depressed_mods` gets only set, if the pressed key is on level three or above.
Example shortcuts which now will work:
Shortcut German Layout (de) [AltGr is a level three switch]
Ctrl+@ Ctrl+AltGr+Q
Shift+1 Shift+1 (as before)
Shortcut German Neo Layout (de neo) [1] [AltGr is a level five switch]
Left AltGr+S
[1] http://neo-layout.org
Task-number: QTBUG-53121
Change-Id: I637a01edc9f2f92a5d3e7a24f5051fb1d3ac2f7f
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
Diffstat (limited to 'src/widgets/widgets/qdockwidget.cpp')
0 files changed, 0 insertions, 0 deletions