┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/dolphinviewcontainer.cpp7
-rw-r--r--src/dolphinviewcontainer.h4
2 files changed, 8 insertions, 3 deletions
diff --git a/src/dolphinviewcontainer.cpp b/src/dolphinviewcontainer.cpp
index b3a8a664a..0605cb0c8 100644
--- a/src/dolphinviewcontainer.cpp
+++ b/src/dolphinviewcontainer.cpp
@@ -777,8 +777,12 @@ void DolphinViewContainer::slotItemActivated(const KFileItem &item)
void DolphinViewContainer::slotfileMiddleClickActivated(const KFileItem &item)
{
KService::List services = KApplicationTrader::queryByMimeType(item.mimetype());
+ const auto modifiers = QGuiApplication::keyboardModifiers();
int indexOfAppToOpenFileWith = 1;
+ if (modifiers & Qt::ShiftModifier) {
+ indexOfAppToOpenFileWith = 2;
+ }
// executable scripts
auto mimeType = item.currentMimeType();
@@ -803,9 +807,8 @@ void DolphinViewContainer::slotfileMiddleClickActivated(const KFileItem &item)
connect(job, &KIO::OpenUrlJob::finished, this, &DolphinViewContainer::slotOpenUrlFinished);
job->start();
} else {
- // If no 2nd service available, try to open archives in new tabs, regardless of the "Browse compressed files as folders" setting.
+ // If no 2nd or 3rd service available, try to open archives in new tabs, regardless of the "Browse compressed files as folders" setting.
const QUrl &url = DolphinView::openItemAsFolderUrl(item);
- const auto modifiers = QGuiApplication::keyboardModifiers();
if (!url.isEmpty()) {
// keep in sync with KUrlNavigator::slotNavigatorButtonClicked
if (modifiers & Qt::ShiftModifier) {
diff --git a/src/dolphinviewcontainer.h b/src/dolphinviewcontainer.h
index d2d322b08..09413ba55 100644
--- a/src/dolphinviewcontainer.h
+++ b/src/dolphinviewcontainer.h
@@ -351,7 +351,9 @@ private Q_SLOTS:
void slotItemsActivated(const KFileItemList &items);
/**
- * Handles middle click of file. It opens the file passed using the second application associated with the file's mimetype.
+ * Handles middle click of file. It opens the file passed using
+ * the second application associated with the file's mimetype, or
+ * the third if shift modifier is pressed.
*/
void slotfileMiddleClickActivated(const KFileItem &item);