From 56a38da57a020ed5617d5293013c4f8cc2d04fc3 Mon Sep 17 00:00:00 2001 From: Méven Car Date: Sun, 20 Oct 2019 12:35:52 +0200 Subject: Avoid emitting twice twice selectionChanged when keyboard changes the selection, fix slotChangeCurrentItem Summary: In KItemListController::slotChangeCurrentItem searchFromNextItem use was bugged : The two branches of `if (searchFromNextItem)` both looked for the next keyboard with indexForKeyboardSearch(text, currentIndex (the first one with just a +1 modulo). But when searchFromNextItem is false, we are supposed to start to look for the next indexKeyboard from the start of the list `0`, not from the `currentIndex` Reviewers: elvisangelaccio, #dolphin Reviewed By: elvisangelaccio, #dolphin Subscribers: kfm-devel Tags: #dolphin Differential Revision: https://phabricator.kde.org/D24505 --- src/kitemviews/kitemlistselectionmanager.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/kitemviews/kitemlistselectionmanager.h') diff --git a/src/kitemviews/kitemlistselectionmanager.h b/src/kitemviews/kitemlistselectionmanager.h index 4bb503a80..6f5710006 100644 --- a/src/kitemviews/kitemlistselectionmanager.h +++ b/src/kitemviews/kitemlistselectionmanager.h @@ -62,6 +62,13 @@ public: bool hasSelection() const; void setSelected(int index, int count = 1, SelectionMode mode = Select); + /** + * Equivalent to: + * clearSelection(); + * setSelected(index, count); + * but emitting once only selectionChanged signal + */ + void replaceSelection(int index, int count = 1); void clearSelection(); void beginAnchoredSelection(int anchor); -- cgit v1.3.1