parent
de5fa22a34
commit
858f4bdce6
@ -1,97 +0,0 @@
|
|||||||
From 27bfcde4efaf936243fc41e4a61d0cac32105ef6 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Nate Graham <nate@kde.org>
|
|
||||||
Date: Tue, 31 Aug 2021 09:09:14 -0600
|
|
||||||
Subject: [PATCH 38/38] Port to KTerminalLauncherJob
|
|
||||||
|
|
||||||
Dolphin still uses KToolInvocation::invokeTerminal() which is
|
|
||||||
deprecated and requires KInit. However Dolphin was ported away from
|
|
||||||
requiring it in other ways, so it is now possible to have Dolphin
|
|
||||||
running but not KInit, which breaks the "Open in Terminal"
|
|
||||||
functionality.
|
|
||||||
|
|
||||||
Using KTerminalLauncherJob fixes this. It was introduced in Frameworks
|
|
||||||
5.83, so the CMake dependency version is accordingly increased.
|
|
||||||
|
|
||||||
BUG: 441072
|
|
||||||
FIXED-IN: 21.12
|
|
||||||
---
|
|
||||||
CMakeLists.txt | 2 +-
|
|
||||||
src/dolphinmainwindow.cpp | 14 ++++++++++----
|
|
||||||
src/dolphinpart.cpp | 6 ++++--
|
|
||||||
3 files changed, 15 insertions(+), 7 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/dolphinmainwindow.cpp b/src/dolphinmainwindow.cpp
|
|
||||||
index 62e347032..f3a5e3b4e 100644
|
|
||||||
--- a/src/dolphinmainwindow.cpp
|
|
||||||
+++ b/src/dolphinmainwindow.cpp
|
|
||||||
@@ -56,10 +56,10 @@
|
|
||||||
#include <KStandardAction>
|
|
||||||
#include <KStartupInfo>
|
|
||||||
#include <KSycoca>
|
|
||||||
+#include <KTerminalLauncherJob>
|
|
||||||
#include <KToggleAction>
|
|
||||||
#include <KToolBar>
|
|
||||||
#include <KToolBarPopupAction>
|
|
||||||
-#include <KToolInvocation>
|
|
||||||
#include <KUrlComboBox>
|
|
||||||
#include <KUrlNavigator>
|
|
||||||
#include <KWindowSystem>
|
|
||||||
@@ -1033,7 +1033,9 @@ void DolphinMainWindow::openTerminal()
|
|
||||||
const QUrl url = m_activeViewContainer->url();
|
|
||||||
|
|
||||||
if (url.isLocalFile()) {
|
|
||||||
- KToolInvocation::invokeTerminal(QString(), {}, url.toLocalFile());
|
|
||||||
+ auto job = new KTerminalLauncherJob(QString());
|
|
||||||
+ job->setWorkingDirectory(url.toLocalFile());
|
|
||||||
+ job->start();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -1047,14 +1049,18 @@ void DolphinMainWindow::openTerminal()
|
|
||||||
statUrl = job->mostLocalUrl();
|
|
||||||
}
|
|
||||||
|
|
||||||
- KToolInvocation::invokeTerminal(QString(), {}, statUrl.isLocalFile() ? statUrl.toLocalFile() : QDir::homePath());
|
|
||||||
+ auto job = new KTerminalLauncherJob(QString());
|
|
||||||
+ job->setWorkingDirectory(statUrl.isLocalFile() ? statUrl.toLocalFile() : QDir::homePath());
|
|
||||||
+ job->start();
|
|
||||||
});
|
|
||||||
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Nothing worked, just use $HOME
|
|
||||||
- KToolInvocation::invokeTerminal(QString(), {}, QDir::homePath());
|
|
||||||
+ auto job = new KTerminalLauncherJob(QString());
|
|
||||||
+ job->setWorkingDirectory(QDir::homePath());
|
|
||||||
+ job->start();
|
|
||||||
}
|
|
||||||
|
|
||||||
void DolphinMainWindow::editSettings()
|
|
||||||
diff --git a/src/dolphinpart.cpp b/src/dolphinpart.cpp
|
|
||||||
index 9c551d67a..8d528f418 100644
|
|
||||||
--- a/src/dolphinpart.cpp
|
|
||||||
+++ b/src/dolphinpart.cpp
|
|
||||||
@@ -32,7 +32,7 @@
|
|
||||||
#include <KPluginFactory>
|
|
||||||
#include <KIO/CommandLauncherJob>
|
|
||||||
#include <KSharedConfig>
|
|
||||||
-#include <KToolInvocation>
|
|
||||||
+#include <KTerminalLauncherJob>
|
|
||||||
|
|
||||||
#include <QActionGroup>
|
|
||||||
#include <QApplication>
|
|
||||||
@@ -567,7 +567,9 @@ QString DolphinPart::localFilePathOrHome() const
|
|
||||||
|
|
||||||
void DolphinPart::slotOpenTerminal()
|
|
||||||
{
|
|
||||||
- KToolInvocation::invokeTerminal(QString(), {}, localFilePathOrHome());
|
|
||||||
+ auto job = new KTerminalLauncherJob(QString());
|
|
||||||
+ job->setWorkingDirectory(localFilePathOrHome());
|
|
||||||
+ job->start();
|
|
||||||
}
|
|
||||||
|
|
||||||
void DolphinPart::slotFindFile()
|
|
||||||
--
|
|
||||||
2.31.1
|
|
||||||
|
|
@ -1 +1 @@
|
|||||||
SHA512 (dolphin-21.08.3.tar.xz) = 918be8ff9ac01ce9e9f0f575a31e70687b24edc08f022cc991922a136bda5900f5cc431b056d2aac8349858e3b9592c365b1cfa8e4bbf01f86eb7be8cbca751e
|
SHA512 (dolphin-21.12.0.tar.xz) = 57251de213d26266af10345d5b7fc9462a06c2d7a37bf0d85ff0a9838d0c86e7f2ac34fe7ab11e4ddf1e4f0a16028cdf2bb710948ce42ebec524029c2515b806
|
||||||
|
Loading…
Reference in new issue