qt6-bb10/tests/auto/gui/kernel
Tang Haixiang efc02f9cc3 xcb: Delete touch points without target windows
When XCB_INPUT_TOUCH_BEGIN closes a popup, we then receive
XCB_INPUT_TOUCH_END, and cannot find a target window (because it's
destroyed). If we don't deliver it, we need to at least clear the
stored point from QPointingDevicePrivate::activePoints. Then when
we deliver the next touch press, m_fakeMouseSourcePointId also
needs to be reset.

It's now even more paramount that autotests (and real-world
touchscreens) must never omit any active touchpoint from a touch event.
If a point doesn't move, it must be included in the QTouchEvent, with
Stationary state. If not, QGuiApp::processTouchEvent() could generate
multiple TouchBegin events in a row, which gets other bits of logic
confused, here and there.

Fixes: QTBUG-94557
Fixes: QTBUG-98519
Fixes: QTBUG-102751
Fixes: QTBUG-103706
Pick-to: 6.2 6.3 5.15
Change-Id: Ia95e410a2bb8bc7784aa5d296fac2b89e53a9f55
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2022-05-20 10:26:18 +02:00
..
noqteventloop Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qaction Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qactiongroup Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qaddpostroutine Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qbackingstore Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qclipboard Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qcursor Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qdrag Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qevent Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qfileopenevent Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qguiapplication Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qguieventdispatcher Remove the qmake project files 2021-01-07 15:32:28 +01:00
qguieventloop Remove .prev_CMakeLists.txt files 2021-01-12 20:59:13 +01:00
qguimetatype Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qguitimer Remove the qmake project files 2021-01-07 15:32:28 +01:00
qguivariant Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qhighdpi Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qinputdevice Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qinputmethod Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qkeyevent Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qkeysequence Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmouseevent Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qmouseevent_modal Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qopenglwindow Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qpalette Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qpixelformat Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qrasterwindow Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qscreen Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qshortcut Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qsurfaceformat Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qtouchevent Use SPDX license identifiers 2022-05-16 16:37:38 +02:00
qwindow xcb: Delete touch points without target windows 2022-05-20 10:26:18 +02:00
CMakeLists.txt CMake: Add BUILTIN_TESTDATA option to qt_internal_add_test 2022-02-11 21:54:44 +01:00