diff options
author | Bea Lam <bea.lam@nokia.com> | 2012-03-05 18:05:40 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-03-10 05:47:00 +0100 |
commit | ed74ec4c40f1476c545bcaacb12fe3a607172035 (patch) | |
tree | f999cdc2ad4f305d4811f84acd345d0cb359421b /src/quick/items/qquickitemviewtransition.cpp | |
parent | fc741d3ac3f3b4da330100da10ce1a800cdb467b (diff) |
refilled items should be moved immediately
refill() functionality should reposition items immediately, else
removeNonVisibleItems() sees different positions from those added in
addVisibleItems() if an item is animating.
Change-Id: Ib9904e08bf92b18fd4b712270c0ab69e9a113e04
Reviewed-by: Martin Jones <martin.jones@nokia.com>
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); } } |