┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/kitemviews/kitemlistselectionmanager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/kitemviews/kitemlistselectionmanager.cpp')
-rw-r--r--src/kitemviews/kitemlistselectionmanager.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/kitemviews/kitemlistselectionmanager.cpp b/src/kitemviews/kitemlistselectionmanager.cpp
index 79c3370b4..383914df0 100644
--- a/src/kitemviews/kitemlistselectionmanager.cpp
+++ b/src/kitemviews/kitemlistselectionmanager.cpp
@@ -291,12 +291,15 @@ void KItemListSelectionManager::itemsRemoved(const KItemRangeList& itemRanges)
// Calling setCurrentItem() would trigger the selectionChanged signal, but we want to
// emit it only once in this function -> change the current item manually and emit currentChanged
m_currentItem = indexAfterRangesRemoving(m_currentItem, itemRanges);
- if (m_currentItem < 0) {
- m_currentItem = qMin(previousCurrent, m_model->count() - 1);
- }
if (m_currentItem != previousCurrent) {
emit currentChanged(m_currentItem, previousCurrent);
}
+
+ if (m_currentItem < 0) {
+ // The current item has been removed.
+ m_currentItem = qMin(previousCurrent, m_model->count() - 1);
+ emit currentChanged(m_currentItem, -1);
+ }
}
// Update the anchor item