┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/dolphincontroller.cpp
diff options
context:
space:
mode:
authorPeter Penz <[email protected]>2008-11-23 12:28:10 +0000
committerPeter Penz <[email protected]>2008-11-23 12:28:10 +0000
commitdcbf1a11783d47e7e4fa30d488ac93a8bc547e71 (patch)
treed993a7b29885dec9e6550ba0b9b5ce95eadaa3ed /src/dolphincontroller.cpp
parentd5c0a60505fd5f20a4069d8fe3bcf4ae0b0b3594 (diff)
Opening a tab with the middle mouse button should always be done with one click, even if double click has been activated.
BUG: 162986 svn path=/trunk/KDE/kdebase/apps/; revision=888007
Diffstat (limited to 'src/dolphincontroller.cpp')
-rw-r--r--src/dolphincontroller.cpp39
1 files changed, 23 insertions, 16 deletions
diff --git a/src/dolphincontroller.cpp b/src/dolphincontroller.cpp
index f6ee66634..fe8c426f3 100644
--- a/src/dolphincontroller.cpp
+++ b/src/dolphincontroller.cpp
@@ -170,26 +170,33 @@ KFileItem DolphinController::itemForIndex(const QModelIndex& index) const
void DolphinController::triggerItem(const QModelIndex& index)
{
- if (m_mouseButtons & Qt::RightButton) {
- // a context menu is opened - assure that no triggering is done
- return;
+ if (m_mouseButtons & Qt::LeftButton) {
+ const KFileItem item = itemForIndex(index);
+ if (index.isValid() && (index.column() == KDirModel::Name)) {
+ emit itemTriggered(item);
+ } else {
+ m_itemView->clearSelection();
+ emit itemEntered(KFileItem());
+ }
+ m_mouseButtons = Qt::NoButton;
+ } else if (m_mouseButtons & Qt::RightButton) {
+ m_mouseButtons = Qt::NoButton;
}
-
- const bool openTab = m_mouseButtons & Qt::MidButton;
- m_mouseButtons = Qt::NoButton;
+}
- const KFileItem item = itemForIndex(index);
- if (index.isValid() && (index.column() == KDirModel::Name)) {
- if (openTab && (item.isDir() || m_dolphinView->isTabsForFilesEnabled())) {
+void DolphinController::requestTab(const QModelIndex& index)
+{
+ if (m_mouseButtons & Qt::MidButton) {
+ const KFileItem item = itemForIndex(index);
+ const bool validRequest = index.isValid() &&
+ (index.column() == KDirModel::Name) &&
+ (item.isDir() || m_dolphinView->isTabsForFilesEnabled());
+ if (validRequest) {
emit tabRequested(item.url());
- } else {
- emit itemTriggered(item);
- }
- } else {
- m_itemView->clearSelection();
- if (!openTab) {
- emit itemEntered(KFileItem());
}
+ m_mouseButtons = Qt::NoButton;
+ } else if (m_mouseButtons & Qt::RightButton) {
+ m_mouseButtons = Qt::NoButton;
}
}