aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickitem.cpp
diff options
context:
space:
mode:
authorSimon Hausmann <simon.hausmann@theqtcompany.com>2014-10-31 20:20:43 +0100
committerSimon Hausmann <simon.hausmann@theqtcompany.com>2014-10-31 20:21:09 +0100
commit473ef83dba6976250a1ff27175716aa1af970f2f (patch)
tree922044c8be598f76945af1599196c7f379df280e /src/quick/items/qquickitem.cpp
parentbeb6667d4e65dfe2ec9e7f554837524416c0f4dc (diff)
parent0704d2be63b484cb579c1507223db3f914b1338a (diff)
Merge remote-tracking branch 'origin/5.4' into dev
Diffstat (limited to 'src/quick/items/qquickitem.cpp')
-rw-r--r--src/quick/items/qquickitem.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/quick/items/qquickitem.cpp b/src/quick/items/qquickitem.cpp
index 41e9e0e57a..25f139549d 100644
--- a/src/quick/items/qquickitem.cpp
+++ b/src/quick/items/qquickitem.cpp
@@ -6957,6 +6957,13 @@ void QQuickItem::grabTouchPoints(const QVector<int> &ids)
windowPriv->itemForTouchPointId[ids.at(i)] = this;
if (oldGrabber)
ungrab.insert(oldGrabber);
+
+ QQuickItem *mouseGrabber = windowPriv->mouseGrabberItem;
+ if (windowPriv->touchMouseId == ids.at(i) && mouseGrabber && mouseGrabber != this) {
+ windowPriv->mouseGrabberItem = 0;
+ QEvent ev(QEvent::UngrabMouse);
+ d->window->sendEvent(mouseGrabber, &ev);
+ }
}
foreach (QQuickItem *oldGrabber, ungrab)
oldGrabber->touchUngrabEvent();