X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/8578ad1e751d218b40c49a601934a23d8ecd027d..70e938b23ef3238bc69ad01ac85cd9262229ea82:/src/dolphinview.cpp diff --git a/src/dolphinview.cpp b/src/dolphinview.cpp index 51e2a0a57..0b8fe5883 100644 --- a/src/dolphinview.cpp +++ b/src/dolphinview.cpp @@ -72,6 +72,7 @@ DolphinView::DolphinView(QWidget* parent, m_detailsView(0), m_columnView(0), m_fileItemDelegate(0), + m_selectionModel(0), m_dolphinModel(dolphinModel), m_dirLister(dirLister), m_proxyModel(proxyModel) @@ -203,7 +204,6 @@ void DolphinView::setMode(Mode mode) const KUrl viewPropsUrl = viewPropertiesUrl(); ViewProperties props(viewPropsUrl); props.setViewMode(m_mode); - createView(); // the file item delegate has been recreated, apply the current @@ -222,8 +222,6 @@ void DolphinView::setMode(Mode mode) emit categorizedSortingChanged(); } - loadDirectory(viewPropsUrl); - emit modeChanged(); } @@ -863,6 +861,14 @@ void DolphinView::createView() view->setItemDelegate(m_fileItemDelegate); view->setModel(m_proxyModel); + if (m_selectionModel != 0) { + view->setSelectionModel(m_selectionModel); + } else { + m_selectionModel = view->selectionModel(); + } + + m_selectionModel->setParent(this); //Reparent the selection model. We do not want it to be deleted when we delete the model + view->setSelectionMode(QAbstractItemView::ExtendedSelection); new KMimeTypeResolver(view, m_dolphinModel);