aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2016-09-14 13:22:46 +0200
committerJ-P Nurmi <jpnurmi@qt.io>2016-09-14 12:44:33 +0000
commite83cbaddbfec2aaae157ef0223f1e8d38a3d37bc (patch)
tree87bb6d31bda76044203954d0ec528cfdc7ed0337 /src
parentb3619f32c20b5851ada0826ec2e7ddc2ec8a210b (diff)
Drawer: fix flickering on touch release
Change-Id: I9a8b46fd796652822760f70d0c59db54214337b1 Task-number: QTBUG-55995 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'src')
-rw-r--r--src/quicktemplates2/qquickdrawer.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/quicktemplates2/qquickdrawer.cpp b/src/quicktemplates2/qquickdrawer.cpp
index be4d624d..0f5e5824 100644
--- a/src/quicktemplates2/qquickdrawer.cpp
+++ b/src/quicktemplates2/qquickdrawer.cpp
@@ -309,6 +309,12 @@ bool QQuickDrawerPrivate::handleMouseMoveEvent(QQuickItem *item, QMouseEvent *ev
Q_Q(QQuickDrawer);
Q_UNUSED(item);
+ // Don't react to synthesized mouse move events at INF,INF coordinates.
+ // QQuickWindowPrivate::translateTouchToMouse() uses them to clear hover
+ // on touch release (QTBUG-55995).
+ if (qIsInf(event->screenPos().x()) || qIsInf(event->screenPos().y()))
+ return true;
+
const QPointF movePoint = event->windowPos();
if (grabMouse(event)) {