A ListView does not retain its currentIndex when moving objects in an ObjectModel. This is because QQmlObjectModel::move() creates a QQmlChangeSet with moveId -1 and therefore QQmlChangeSet::isMove() returns false. QQuickItemView does not see these changes as moves, but as removals and insertions, so the current index does not follow as it should.
Steps to reproduce:
- double click any item in the list
- the item moves to the next position in the list
- the current index follows
- the current index leaves behind