┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/dolphincolumnwidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/dolphincolumnwidget.cpp')
-rw-r--r--src/dolphincolumnwidget.cpp26
1 files changed, 20 insertions, 6 deletions
diff --git a/src/dolphincolumnwidget.cpp b/src/dolphincolumnwidget.cpp
index ae5f32fcf..8bf66b2c8 100644
--- a/src/dolphincolumnwidget.cpp
+++ b/src/dolphincolumnwidget.cpp
@@ -26,7 +26,9 @@
#include "dolphinsortfilterproxymodel.h"
#include "dolphinsettings.h"
#include "dolphin_columnmodesettings.h"
+#include "dolphin_generalsettings.h"
#include "draganddrophelper.h"
+#include "selectionmanager.h"
#include <kcolorscheme.h>
#include <kdirlister.h>
@@ -118,6 +120,13 @@ DolphinColumnWidget::DolphinColumnWidget(QWidget* parent,
m_proxyModel->setFilterCaseSensitivity(Qt::CaseInsensitive);
setModel(m_proxyModel);
+ const bool useSelManager = KGlobalSettings::singleClick() &&
+ DolphinSettings::instance().generalSettings()->showSelectionToggle();
+ if (useSelManager) {
+ SelectionManager* selManager = new SelectionManager(this);
+ connect(selManager, SIGNAL(selectionChanged()),
+ this, SLOT(requestActivation()));
+ }
new KMimeTypeResolver(this, m_dolphinModel);
m_iconManager = new IconManager(this, m_proxyModel);
m_iconManager->setShowPreview(m_view->m_controller->dolphinView()->showPreview());
@@ -304,12 +313,7 @@ void DolphinColumnWidget::paintEvent(QPaintEvent* event)
void DolphinColumnWidget::mousePressEvent(QMouseEvent* event)
{
- m_view->m_controller->requestActivation();
- if (!m_active) {
- m_view->requestActivation(this);
- m_view->m_controller->triggerUrlChangeRequest(m_url);
- }
-
+ requestActivation();
QListView::mousePressEvent(event);
}
@@ -367,6 +371,16 @@ void DolphinColumnWidget::slotEntered(const QModelIndex& index)
m_view->m_controller->emitItemEntered(item);
}
+void DolphinColumnWidget::requestActivation()
+{
+ m_view->m_controller->requestActivation();
+ if (!m_active) {
+ m_view->requestActivation(this);
+ m_view->m_controller->triggerUrlChangeRequest(m_url);
+ selectionModel()->clear();
+ }
+}
+
void DolphinColumnWidget::activate()
{
setFocus(Qt::OtherFocusReason);