From 1e8595c525ec2abf8991d776f4d0fdb664964e69 Mon Sep 17 00:00:00 2001 From: Johan Klokkhammer Helsing <johan.helsing@qt.io> Date: Wed, 14 Sep 2016 13:22:36 +0200 Subject: [PATCH] Add missing mouse ungrab when touch ends Task-number: QTBUG-54453 Change-Id: Ie8fadd89797cd7c9ff5bf00924706bd662bbd22d Reviewed-by: Giulio Camuffo <giulio.camuffo@kdab.com> Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com> --- src/compositor/compositor_api/qwaylandquickitem.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/compositor/compositor_api/qwaylandquickitem.cpp b/src/compositor/compositor_api/qwaylandquickitem.cpp index a1855529..5e90c06c 100644 --- a/src/compositor/compositor_api/qwaylandquickitem.cpp +++ b/src/compositor/compositor_api/qwaylandquickitem.cpp @@ -645,6 +645,12 @@ void QWaylandQuickItem::touchEvent(QTouchEvent *event) grabMouse(); } + if (event->type() == QEvent::TouchEnd) { + QQuickItem *grabber = window()->mouseGrabberItem(); + if (grabber == this) + ungrabMouse(); + } + QPoint pointPos; const QList<QTouchEvent::TouchPoint> &points = event->touchPoints(); if (!points.isEmpty()) -- GitLab