diff --git a/src/plugins/platforms/wayland/qwaylandinputdevice.cpp b/src/plugins/platforms/wayland/qwaylandinputdevice.cpp index 9e3fbabb12f..5198a9e31ea 100644 --- a/src/plugins/platforms/wayland/qwaylandinputdevice.cpp +++ b/src/plugins/platforms/wayland/qwaylandinputdevice.cpp @@ -983,14 +983,12 @@ void QWaylandInputDevice::Touch::touch_frame() } QWindowSystemInterface::handleTouchEvent(window, mParent->mTouchDevice, mTouchPoints); - const bool allReleased = allTouchPointsReleased(); - mPrevTouchPoints = mTouchPoints; - mTouchPoints.clear(); - - if (allReleased) { - QWindowSystemInterface::handleTouchEvent(window, mParent->mTouchDevice, mTouchPoints); + if (allTouchPointsReleased()) mPrevTouchPoints.clear(); - } + else + mPrevTouchPoints = mTouchPoints; + + mTouchPoints.clear(); } QT_END_NAMESPACE