diff options
Diffstat (limited to 'src/quick/items')
-rw-r--r-- | src/quick/items/qquickevents.cpp | 15 | ||||
-rw-r--r-- | src/quick/items/qquickevents_p_p.h | 1 |
2 files changed, 16 insertions, 0 deletions
diff --git a/src/quick/items/qquickevents.cpp b/src/quick/items/qquickevents.cpp index 911cc9a52c..d7b1f7573b 100644 --- a/src/quick/items/qquickevents.cpp +++ b/src/quick/items/qquickevents.cpp @@ -573,6 +573,21 @@ const QQuickEventPoint *QQuickPointerEvent::point(int i) const { return nullptr; } +bool QQuickPointerEvent::allPointsAccepted() const +{ + Q_ASSERT(m_event && !isTabletEvent()); + if (isMouseEvent()) { + return m_mousePoint->isAccepted(); + } + if (isTouchEvent()) { + for (int i = 0; i < m_pointCount; ++i) { + if (!m_touchPoints.at(i)->isAccepted()) + return false; + } + } + return true; +} + /*! \internal Populate the reusable synth-mouse event from one touchpoint. diff --git a/src/quick/items/qquickevents_p_p.h b/src/quick/items/qquickevents_p_p.h index 624c131683..5dea26a2a5 100644 --- a/src/quick/items/qquickevents_p_p.h +++ b/src/quick/items/qquickevents_p_p.h @@ -338,6 +338,7 @@ public: // helpers for C++ only (during event delivery) bool isTouchEvent() const; bool isTabletEvent() const; bool isValid() const { return m_event != nullptr; } + bool allPointsAccepted() const; int pointCount() const { return m_pointCount; } const QQuickEventPoint *point(int i) const; |