X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/749fac334dcf56eecb8cc6dbfb1cc005804e3c7d..e5eae108ca4511be9dae5f8bb4a4e1fbb0d89c7a:/src/dolphincolumnview.cpp diff --git a/src/dolphincolumnview.cpp b/src/dolphincolumnview.cpp index ac131497e..debe10d35 100644 --- a/src/dolphincolumnview.cpp +++ b/src/dolphincolumnview.cpp @@ -131,7 +131,7 @@ DolphinColumnView::DolphinColumnView(QWidget* parent, const QString nameFilter = controller->nameFilter(); if (!nameFilter.isEmpty()) { - m_proxyModel->setFilterRegExp(nameFilter); + m_proxyModel->setFilterFixedString(nameFilter); } updateDecorationSize(dolphinView->showPreview()); @@ -192,6 +192,22 @@ KFileItem DolphinColumnView::itemAt(const QPoint& pos) const return item; } +void DolphinColumnView::setSelectionModel(QItemSelectionModel* model) +{ + // If a change of the selection is done although the view is not active + // (e. g. by the selection markers), the column must be activated. This + // is done by listening to the current selectionChanged() signal. + if (selectionModel() != 0) { + disconnect(selectionModel(), SIGNAL(selectionChanged(QItemSelection, QItemSelection)), + this, SLOT(requestActivation())); + } + + QListView::setSelectionModel(model); + + connect(selectionModel(), SIGNAL(selectionChanged(QItemSelection, QItemSelection)), + this, SLOT(requestActivation())); +} + QStyleOptionViewItem DolphinColumnView::viewOptions() const { QStyleOptionViewItem viewOptions = QListView::viewOptions();