From ac73b172fc5c08163b21d7edaf61aba46a899276 Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Wed, 11 Jan 2012 22:33:20 +0100 Subject: Fix selection issue when expanding a tree The selection anchor must be reset when changing the current item to the root of the tree. BUG: 290832 FIXED-IN: 4.8.0 --- src/kitemviews/kitemlistcontroller.cpp | 2 ++ src/kitemviews/kitemlistselectionmanager.h | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/kitemviews/kitemlistcontroller.cpp b/src/kitemviews/kitemlistcontroller.cpp index 9dda3384a..d3365ab85 100644 --- a/src/kitemviews/kitemlistcontroller.cpp +++ b/src/kitemviews/kitemlistcontroller.cpp @@ -380,7 +380,9 @@ bool KItemListController::mousePressEvent(QGraphicsSceneMouseEvent* event, const } if (m_view->isAboveExpansionToggle(m_pressedIndex, m_pressedMousePos)) { + m_selectionManager->endAnchoredSelection(); m_selectionManager->setCurrentItem(m_pressedIndex); + m_selectionManager->beginAnchoredSelection(m_pressedIndex); return true; } diff --git a/src/kitemviews/kitemlistselectionmanager.h b/src/kitemviews/kitemlistselectionmanager.h index 4afad1f8b..43d0dcb80 100644 --- a/src/kitemviews/kitemlistselectionmanager.h +++ b/src/kitemviews/kitemlistselectionmanager.h @@ -92,7 +92,7 @@ private: KItemModelBase* m_model; friend class KItemListController; // Calls setModel() - friend class KItemListView; // Calls itemsInserted() and itemsRemoved() + friend class KItemListView; // Calls itemsInserted(), itemsRemoved() and itemsMoved() friend class KItemListSelectionManagerTest; }; -- cgit v1.3