diff options
Diffstat (limited to 'src/kcategorizedview.cpp')
| -rw-r--r-- | src/kcategorizedview.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/kcategorizedview.cpp b/src/kcategorizedview.cpp index 026f56c24..e88e6a383 100644 --- a/src/kcategorizedview.cpp +++ b/src/kcategorizedview.cpp @@ -816,13 +816,12 @@ void KCategorizedView::setSelection(const QRect &rect, selection << QItemSelectionRange(first, last); } - if (d->lastSelection.count() && !d->mouseButtonPressed) + if (d->lastSelection.count()) { - selection.merge(d->lastSelection, flags); - } - else if (d->lastSelection.count()) - { - selection.merge(d->lastSelection, QItemSelectionModel::Select); + if ((selection.count() == 1) && (selection[0].indexes().count() == 1)) + selection.merge(d->lastSelection, flags); + else + selection.merge(d->lastSelection, QItemSelectionModel::Select); } selectionModel()->select(selection, flags); |
