diff options
author | Dyami Caliri <dyami@dragonframe.com> | 2014-06-18 22:20:05 -0700 |
---|---|---|
committer | Gatis Paeglis <gatis.paeglis@digia.com> | 2014-08-20 19:43:02 +0200 |
commit | 07c34fcc8a721ffe989eb8882b75ecb95600516c (patch) | |
tree | c970a3462334470ee707dd83dc3d93090f449d07 /src/plugins/platforms/xcb/qxcbkeyboard.h | |
parent | 8688dfcd7ce148a8e7fcd16521d458417eadcbf8 (diff) |
xcb: use keyboard event source window to determine auto-repeat value
The xcb auto-repeat checking code checks for queued events on the target
(focused) window. This breaks down if you have a native child widget,
and QKeyEvent::autoRepeat is never true.
Task-number: QTBUG-21500
Change-Id: Ia979edfa8a3afce07a3e1cbaa778541ffb9ce5dc
Reviewed-by: Gatis Paeglis <gatis.paeglis@digia.com>
Diffstat (limited to 'src/plugins/platforms/xcb/qxcbkeyboard.h')
-rw-r--r-- | src/plugins/platforms/xcb/qxcbkeyboard.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/plugins/platforms/xcb/qxcbkeyboard.h b/src/plugins/platforms/xcb/qxcbkeyboard.h index 11b7429aca..e816d3c003 100644 --- a/src/plugins/platforms/xcb/qxcbkeyboard.h +++ b/src/plugins/platforms/xcb/qxcbkeyboard.h @@ -64,8 +64,8 @@ public: ~QXcbKeyboard(); - void handleKeyPressEvent(QXcbWindowEventListener *eventListener, const xcb_key_press_event_t *event); - void handleKeyReleaseEvent(QXcbWindowEventListener *eventListener, const xcb_key_release_event_t *event); + void handleKeyPressEvent(const xcb_key_press_event_t *event); + void handleKeyReleaseEvent(const xcb_key_release_event_t *event); void handleMappingNotifyEvent(const void *event); Qt::KeyboardModifiers translateModifiers(int s) const; @@ -83,7 +83,7 @@ public: #endif protected: - void handleKeyEvent(QWindow *window, QEvent::Type type, xcb_keycode_t code, quint16 state, xcb_timestamp_t time); + void handleKeyEvent(xcb_window_t sourceWindow, QEvent::Type type, xcb_keycode_t code, quint16 state, xcb_timestamp_t time); void resolveMaskConflicts(); QString lookupString(struct xkb_state *state, xcb_keycode_t code) const; |