aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick/items/qquickitemview.cpp
diff options
context:
space:
mode:
authorGabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>2015-09-04 13:31:43 +0200
committerGabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>2015-09-05 16:55:47 +0000
commit7ee93972d0f907725ad47f9a08b65a14ca48e9c0 (patch)
tree16740ab2b77de153f289d85ade1e80ecc01b8627 /src/quick/items/qquickitemview.cpp
parentcef14c0ff9a0caaa5b65ab89825534b3fcbd4764 (diff)
Item views: Don't emit 'currentItemChanged' if the current item didn't really change
Change-Id: I8892bb9b6ab6737d4a6f6f8aab836f863668682e Reviewed-by: J-P Nurmi <jpnurmi@theqtcompany.com>
Diffstat (limited to 'src/quick/items/qquickitemview.cpp')
-rw-r--r--src/quick/items/qquickitemview.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/quick/items/qquickitemview.cpp b/src/quick/items/qquickitemview.cpp
index d4c8c3f8ee..b618daf64b 100644
--- a/src/quick/items/qquickitemview.cpp
+++ b/src/quick/items/qquickitemview.cpp
@@ -1699,7 +1699,8 @@ void QQuickItemViewPrivate::updateCurrent(int modelIndex)
updateHighlight();
if (oldCurrentIndex != currentIndex)
emit q->currentIndexChanged();
- if (oldCurrentItem != currentItem)
+ if (oldCurrentItem != currentItem
+ && (!oldCurrentItem || !currentItem || oldCurrentItem->item != currentItem->item))
emit q->currentItemChanged();
releaseItem(oldCurrentItem);
}