diff options
Diffstat (limited to 'src/quicktemplates2/qquickpopup.cpp')
-rw-r--r-- | src/quicktemplates2/qquickpopup.cpp | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/src/quicktemplates2/qquickpopup.cpp b/src/quicktemplates2/qquickpopup.cpp index bafa3110..d5a0ccf4 100644 --- a/src/quicktemplates2/qquickpopup.cpp +++ b/src/quicktemplates2/qquickpopup.cpp @@ -313,7 +313,7 @@ bool QQuickPopupPrivate::acceptTouch(const QTouchEvent::TouchPoint &point) if (point.id() == touchId) return true; - if (touchId == -1 && point.state() != Qt::TouchPointReleased) { + if (touchId == -1 && point.state() != QEventPoint::Released) { touchId = point.id(); return true; } @@ -372,11 +372,11 @@ bool QQuickPopupPrivate::handleMouseEvent(QQuickItem *item, QMouseEvent *event) { switch (event->type()) { case QEvent::MouseButtonPress: - return handlePress(item, event->windowPos(), event->timestamp()); + return handlePress(item, event->scenePosition(), event->timestamp()); case QEvent::MouseMove: - return handleMove(item, event->windowPos(), event->timestamp()); + return handleMove(item, event->scenePosition(), event->timestamp()); case QEvent::MouseButtonRelease: - return handleRelease(item, event->windowPos(), event->timestamp()); + return handleRelease(item, event->scenePosition(), event->timestamp()); default: Q_UNREACHABLE(); return false; @@ -392,15 +392,15 @@ bool QQuickPopupPrivate::handleTouchEvent(QQuickItem *item, QTouchEvent *event) case QEvent::TouchEnd: for (const QTouchEvent::TouchPoint &point : event->touchPoints()) { if (!acceptTouch(point)) - return blockInput(item, point.pos()); + return blockInput(item, point.position()); switch (point.state()) { - case Qt::TouchPointPressed: - return handlePress(item, item->mapToScene(point.pos()), event->timestamp()); - case Qt::TouchPointMoved: - return handleMove(item, item->mapToScene(point.pos()), event->timestamp()); - case Qt::TouchPointReleased: - return handleRelease(item, item->mapToScene(point.pos()), event->timestamp()); + case QEventPoint::Pressed: + return handlePress(item, item->mapToScene(point.position()), event->timestamp()); + case QEventPoint::Updated: + return handleMove(item, item->mapToScene(point.position()), event->timestamp()); + case QEventPoint::Released: + return handleRelease(item, item->mapToScene(point.position()), event->timestamp()); default: break; } @@ -451,7 +451,7 @@ bool QQuickPopupPrivate::prepareExitTransition() if (transitionState == ExitTransition && transitionManager.isRunning()) return false; - if (transitionState != ExitTransition) { + if (transitionState != ExitTransition && !hadActiveFocusBeforeExitTransition) { // The setFocus(false) call below removes any active focus before we're // able to check it in finalizeExitTransition. hadActiveFocusBeforeExitTransition = popupItem->hasActiveFocus(); |