diff options
author | Frederik Gladhorn <frederik.gladhorn@theqtcompany.com> | 2016-07-29 16:05:38 +0200 |
---|---|---|
committer | Frederik Gladhorn <frederik.gladhorn@qt.io> | 2016-07-31 21:46:45 +0000 |
commit | b13668d5304c0c0cef116fb3126d772083a71563 (patch) | |
tree | 493c7daf18e69b8657248dc0ea5642da5871d0f9 /src/quick/items/qquickevents.cpp | |
parent | 397588a9f68886608d2d257f70178ffc1b79e6ae (diff) |
Make QQuickEventPoint::grabber a QPointer internally
Accessing the grabbers was always dangerous. The present code only works
because it iterates over all current QQuickItems and doesn't even try to
deal with things being deleted inbetween.
Change-Id: Id85791dcbd87ec8c5027f9c1376cb39e5779cabe
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Diffstat (limited to 'src/quick/items/qquickevents.cpp')
-rw-r--r-- | src/quick/items/qquickevents.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/quick/items/qquickevents.cpp b/src/quick/items/qquickevents.cpp index 46b6bbe87e..966a78f56b 100644 --- a/src/quick/items/qquickevents.cpp +++ b/src/quick/items/qquickevents.cpp @@ -501,6 +501,15 @@ QQuickPointerDevice *QQuickPointerDevice::tabletDevice(qint64 id) return nullptr; } +QQuickItem *QQuickEventPoint::grabber() const +{ + return m_grabber.data(); +} + +void QQuickEventPoint::setGrabber(QQuickItem *grabber) +{ + m_grabber = QPointer<QQuickItem>(grabber); +} QQuickEventTouchPoint::QQuickEventTouchPoint(QQuickPointerTouchEvent *parent) : QQuickEventPoint(parent), m_rotation(0), m_pressure(0) |