diff options
Diffstat (limited to 'src/quick/items/qquickitemviewtransition.cpp')
-rw-r--r-- | src/quick/items/qquickitemviewtransition.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/quick/items/qquickitemviewtransition.cpp b/src/quick/items/qquickitemviewtransition.cpp index 7e804ae5bf..d9dce49349 100644 --- a/src/quick/items/qquickitemviewtransition.cpp +++ b/src/quick/items/qquickitemviewtransition.cpp @@ -365,13 +365,18 @@ qreal QQuickItemViewTransitionableItem::itemY() const return item->y(); } -void QQuickItemViewTransitionableItem::moveTo(const QPointF &pos) +void QQuickItemViewTransitionableItem::moveTo(const QPointF &pos, bool immediate) { - if (transitionScheduledOrRunning()) { + if (immediate || !transitionScheduledOrRunning()) { + if (immediate) { + if (transition) + transition->cancel(); + resetTransitionData(); + } + item->setPos(pos); + } else { nextTransitionTo = pos; nextTransitionToSet = true; - } else { - item->setPos(pos); } } |