diff options
author | Liang Qi <liang.qi@qt.io> | 2022-04-27 09:24:21 +0200 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2022-05-06 11:13:02 +0200 |
commit | 9b92c5314e8362f5473611ea0d06f403836df5dd (patch) | |
tree | b24d1821a2a607f0f48305430cc935144dd07873 /src/plugins/platforms/xcb/qxcbconnection.cpp | |
parent | 71684763b7c397e23ec997361d8daa30bcddb147 (diff) |
Revert "xcb: stablilize xkb state when keymap updated"
This reverts commit 27c25fc909c19ddc4750f36d26b7c500db9eb0ab.
Currently Qt only supports core device of keyboard, not every
real keyboard. Create a new xkb state during
xcb_xkb_new_keyboard_notify_event_t, it will lose the correct
state before the event, for example, when using the second
or later layout than the first one. The new xkb state will
use the first layout. It's difficult to sync the xkb states.
Fixes: QTBUG-102493
Fixes: QTBUG-102640
Task-number: QTBUG-95933
Pick-to: 6.3 6.2 5.15
Change-Id: Iaa5369ff9f5495e194577dcbb8f78303158c9a73
Reviewed-by: Lu YaNing <luyaning@uniontech.com>
Reviewed-by: Zhang Hao <543985125@qq.com>
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Ilya Fedin <fedin-ilja2010@ya.ru>
Diffstat (limited to 'src/plugins/platforms/xcb/qxcbconnection.cpp')
-rw-r--r-- | src/plugins/platforms/xcb/qxcbconnection.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/plugins/platforms/xcb/qxcbconnection.cpp b/src/plugins/platforms/xcb/qxcbconnection.cpp index 6a843f513d..2d485324a0 100644 --- a/src/plugins/platforms/xcb/qxcbconnection.cpp +++ b/src/plugins/platforms/xcb/qxcbconnection.cpp @@ -775,7 +775,7 @@ void QXcbConnection::handleXcbEvent(xcb_generic_event_t *event) case XCB_XKB_NEW_KEYBOARD_NOTIFY: { xcb_xkb_new_keyboard_notify_event_t *ev = &xkb_event->new_keyboard_notify; if (ev->changed & XCB_XKB_NKN_DETAIL_KEYCODES) - m_keyboard->updateKeymap(ev); + m_keyboard->updateKeymap(); break; } default: |