diff options
author | Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com> | 2015-09-04 13:31:43 +0200 |
---|---|---|
committer | Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com> | 2015-09-05 16:55:47 +0000 |
commit | 7ee93972d0f907725ad47f9a08b65a14ca48e9c0 (patch) | |
tree | 16740ab2b77de153f289d85ade1e80ecc01b8627 /src/quick/items | |
parent | cef14c0ff9a0caaa5b65ab89825534b3fcbd4764 (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')
-rw-r--r-- | src/quick/items/qquickitemview.cpp | 3 |
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); } |