From: Alan Alpert Date: Thu, 28 Jul 2011 10:11:52 +0000 (+1000) Subject: Jump to same model index (if it exists) when the model changes X-Git-Url: http://git.silmor.de/gitweb/?a=commitdiff_plain;h=98ebab25abc8f66629598cb9ebd4fe942bc0c57f;p=konrad%2Fqtdeclarative.git Jump to same model index (if it exists) when the model changes For PathView, ListView does this already. Task-number: QTBUG-19059 Change-Id: Id09087ad372e46661794b0cb15cb30fc88802c4b Reviewed-on: http://codereview.qt.nokia.com/2330 Reviewed-by: Qt Sanity Bot Reviewed-by: Martin Jones --- diff --git a/src/declarative/items/qsgpathview.cpp b/src/declarative/items/qsgpathview.cpp index 7dd58c5..e10575c 100644 --- a/src/declarative/items/qsgpathview.cpp +++ b/src/declarative/items/qsgpathview.cpp @@ -418,7 +418,10 @@ void QSGPathView::setModel(const QVariant &model) d->offset = d->model->count() + d->offset; } d->regenerate(); - d->fixOffset(); + if (d->currentIndex < d->modelCount) + setOffset(qmlMod(d->modelCount - d->currentIndex, d->modelCount)); + else + d->fixOffset(); emit countChanged(); emit modelChanged(); }