diff --git a/src/lib/downloads/downloadmanager.cpp b/src/lib/downloads/downloadmanager.cpp
index e9b441481..9337d92ad 100644
--- a/src/lib/downloads/downloadmanager.cpp
+++ b/src/lib/downloads/downloadmanager.cpp
@@ -75,6 +75,10 @@ void DownloadManager::loadSettings()
m_externalExecutable = settings.value("ExternalManagerExecutable", QString()).toString();
m_externalArguments = settings.value("ExternalManagerArguments", QString()).toString();
settings.endGroup();
+
+ if (!m_externalArguments.contains(QLatin1String("%d"))) {
+ m_externalArguments.append(QLatin1String(" %d"));
+ }
}
void DownloadManager::show()
@@ -101,7 +105,10 @@ void DownloadManager::keyPressEvent(QKeyEvent* e)
void DownloadManager::startExternalManager(const QUrl &url)
{
- QzTools::startExternalProcess(m_externalExecutable, m_externalArguments + url.toEncoded());
+ QString arguments = m_externalArguments;
+ arguments.replace(QLatin1String("%d"), url.toEncoded());
+
+ QzTools::startExternalProcess(m_externalExecutable, arguments);
m_lastDownloadOption = ExternalManager;
}
diff --git a/src/lib/preferences/preferences.ui b/src/lib/preferences/preferences.ui
index 6a1965d13..51dd1c867 100644
--- a/src/lib/preferences/preferences.ui
+++ b/src/lib/preferences/preferences.ui
@@ -2014,6 +2014,13 @@
+ -
+
+
+ <b>%d</b> will be replaced with URL to be downloaded
+
+
+
-
diff --git a/translations/empty.ts b/translations/empty.ts
index 6d19743e5..3640a1500 100644
--- a/translations/empty.ts
+++ b/translations/empty.ts
@@ -2812,6 +2812,10 @@
+
+
+
+
QObject