diff options
author | Gatis Paeglis <gatis.paeglis@digia.com> | 2013-07-01 14:08:32 +0200 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-07-07 11:26:15 +0200 |
commit | b212fc80a7be8877ddbdf99f95a4f7663293f551 (patch) | |
tree | 7b382744e98862b7ed9123b2881bfec59c154c8b /src/plugins/platforms/xcb/qxcbkeyboard.h | |
parent | dbe5306c2c4f5017827efb42aae69bdf8573674e (diff) |
Resolve modifier mask conflicts on X11
On X11 key codes and modifiers can have many-to-many relationship, i.e.
a key can activate several modifiers, and a modifier may be activated
by several keys. This patch handles these cases, the logic is borrowed from Qt4.
Task-number: QTBUG-31572
Change-Id: Ide4eb890ec723c68afafe0576d8285440a47d7b0
Reviewed-by: Nikolai Kosjar <nikolai.kosjar@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src/plugins/platforms/xcb/qxcbkeyboard.h')
-rw-r--r-- | src/plugins/platforms/xcb/qxcbkeyboard.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/plugins/platforms/xcb/qxcbkeyboard.h b/src/plugins/platforms/xcb/qxcbkeyboard.h index af6677c20f..770a7eabea 100644 --- a/src/plugins/platforms/xcb/qxcbkeyboard.h +++ b/src/plugins/platforms/xcb/qxcbkeyboard.h @@ -84,6 +84,7 @@ public: protected: void handleKeyEvent(QWindow *window, QEvent::Type type, xcb_keycode_t code, quint16 state, xcb_timestamp_t time); + void resolveMaskConflicts(); QString keysymToUnicode(xcb_keysym_t sym) const; @@ -111,6 +112,8 @@ private: uint alt; uint altgr; uint meta; + uint super; + uint hyper; }; _mod_masks rmod_masks; |