diff options
author | Gatis Paeglis <gatis.paeglis@qt.io> | 2020-08-20 15:04:05 +0200 |
---|---|---|
committer | Gatis Paeglis <gatis.paeglis@qt.io> | 2020-08-23 01:18:26 +0200 |
commit | 4f99f87578a36d59448e4332a06cdb0c8556a37a (patch) | |
tree | 74156a318ba8af14ccaef982aabe5e8cd5b00e93 /src/plugins/platforms/xcb/qxcbconnection.cpp | |
parent | 7318328c2d658f6ca2e9443c6e3e3b0a179e9811 (diff) |
xcb: remove QT_XCB_NO_XI2_MOUSE code path
This code path was deprecated in 5.12 and scheduled for
removal in Qt 6. See 9184384bc9d9d71a146fff535021357258a0295e.
According to the source comments from f48170b479df359f47af12b03a501d9d0c386e66,
apperantly XInput2 had some issues when running on Xinerama screens
and therefore there was a check for it in xi2MouseEventsDisabled().
We plan to remove Xinerama support, therefore Xinerama handling in
xi2MouseEventsDisabled() is irrelevant.
Task-number: QTBUG-69412
Change-Id: I384d7c46337358caecccf644acc8ffbd381dc69d
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Diffstat (limited to 'src/plugins/platforms/xcb/qxcbconnection.cpp')
-rw-r--r-- | src/plugins/platforms/xcb/qxcbconnection.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/plugins/platforms/xcb/qxcbconnection.cpp b/src/plugins/platforms/xcb/qxcbconnection.cpp index a703a46cf8..7435e124dc 100644 --- a/src/plugins/platforms/xcb/qxcbconnection.cpp +++ b/src/plugins/platforms/xcb/qxcbconnection.cpp @@ -597,12 +597,16 @@ void QXcbConnection::handleXcbEvent(xcb_generic_event_t *event) HANDLE_PLATFORM_WINDOW_EVENT(xcb_client_message_event_t, window, handleClientMessageEvent); } case XCB_ENTER_NOTIFY: - if (hasXInput2() && !xi2MouseEventsDisabled()) + if (hasXInput2()) { + // Prefer XI2 enter (XCB_INPUT_ENTER) events over core events. break; + } HANDLE_PLATFORM_WINDOW_EVENT(xcb_enter_notify_event_t, event, handleEnterNotifyEvent); case XCB_LEAVE_NOTIFY: - if (hasXInput2() && !xi2MouseEventsDisabled()) + if (hasXInput2()) { + // Prefer XI2 leave (XCB_INPUT_LEAVE) events over core events. break; + } m_keyboard->updateXKBStateFromCore(reinterpret_cast<xcb_leave_notify_event_t *>(event)->state); HANDLE_PLATFORM_WINDOW_EVENT(xcb_leave_notify_event_t, event, handleLeaveNotifyEvent); case XCB_FOCUS_IN: |