aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickevents.cpp
diff options
context:
space:
mode:
authorShawn Rutledge <shawn.rutledge@qt.io>2017-04-05 09:33:15 +0200
committerShawn Rutledge <shawn.rutledge@qt.io>2017-04-14 08:48:05 +0000
commit67ced4791ddabebfa19a2f101aa292b5eba60b90 (patch)
treec99f0797e47414fa7e9186d69238fcf12c0297dc /src/quick/items/qquickevents.cpp
parent1457df74f4c1d770e1e820de8cd082be1bd2489e (diff)
Make tst_qquickflickable::nestedSliderUsingTouch pass
Revisions to 9b5fc80af28580e9672792dd511d876a93947882 and 781f76176239bfbfe6041f2676e2f2804337d312 are necessary to allow Flickable to steal synth-mouse events from children which accept only touch events. Change-Id: Id779368d7a44c1561da99a9f2c37e8d32278773e Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Diffstat (limited to 'src/quick/items/qquickevents.cpp')
-rw-r--r--src/quick/items/qquickevents.cpp7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/quick/items/qquickevents.cpp b/src/quick/items/qquickevents.cpp
index 19dd81b6fc..3b14f72870 100644
--- a/src/quick/items/qquickevents.cpp
+++ b/src/quick/items/qquickevents.cpp
@@ -610,11 +610,8 @@ void QQuickEventPoint::setGrabberItem(QQuickItem *grabber)
m_sceneGrabPos = m_scenePos;
if (oldGrabberHandler)
oldGrabberHandler->onGrabChanged(oldGrabberHandler, CancelGrabExclusive, this);
- else if (oldGrabberItem && oldGrabberItem != grabber) {
- auto pte = pointerEvent()->asPointerTouchEvent();
- if (pte && pte->asTouchEvent() && pte->asTouchEvent()->touchPointStates() == Qt::TouchPointReleased)
- oldGrabberItem->touchUngrabEvent();
- }
+ else if (oldGrabberItem && oldGrabberItem != grabber && grabber && pointerEvent()->asPointerTouchEvent())
+ oldGrabberItem->touchUngrabEvent();
for (QPointer<QQuickPointerHandler> passiveGrabber : m_passiveGrabbers)
passiveGrabber->onGrabChanged(passiveGrabber, OverrideGrabPassive, this);
}