From d511ed21e5672884d84cd90cb6e8d570e0318c4f Mon Sep 17 00:00:00 2001 From: Martin Rotter Date: Tue, 31 Aug 2021 08:49:03 +0200 Subject: [PATCH] fix behavior of external tools to also work as a solution for #332 --- src/librssguard/gui/settings/settingsbrowsermail.cpp | 2 +- src/librssguard/miscellaneous/externaltool.cpp | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/librssguard/gui/settings/settingsbrowsermail.cpp b/src/librssguard/gui/settings/settingsbrowsermail.cpp index 0d2175cca..5572bbb64 100644 --- a/src/librssguard/gui/settings/settingsbrowsermail.cpp +++ b/src/librssguard/gui/settings/settingsbrowsermail.cpp @@ -57,7 +57,7 @@ SettingsBrowserMail::SettingsBrowserMail(Settings* settings, QWidget* parent) connect(m_ui->m_btnAddTool, &QPushButton::clicked, this, &SettingsBrowserMail::addExternalTool); connect(m_ui->m_btnEditTool, &QPushButton::clicked, this, &SettingsBrowserMail::editSelectedExternalTool); connect(m_ui->m_btnDeleteTool, &QPushButton::clicked, this, &SettingsBrowserMail::deleteSelectedExternalTool); - connect(m_ui->m_listTools, &QTreeWidget::itemDoubleClicked, this, &SettingsBrowserMail::editSelectedExternalTool); + connect(m_ui->m_listTools, &QTreeWidget::itemDoubleClicked, m_ui->m_btnEditTool, &QPushButton::click); connect(m_ui->m_listTools, &QTreeWidget::currentItemChanged, this, [this](QTreeWidgetItem* current, QTreeWidgetItem* previous) { Q_UNUSED(previous) diff --git a/src/librssguard/miscellaneous/externaltool.cpp b/src/librssguard/miscellaneous/externaltool.cpp index 339c18855..92ce2b644 100644 --- a/src/librssguard/miscellaneous/externaltool.cpp +++ b/src/librssguard/miscellaneous/externaltool.cpp @@ -70,5 +70,10 @@ void ExternalTool::setToolsToSettings(QVector& tools) { } bool ExternalTool::run(const QString& target) { - return IOFactory::startProcessDetached(executable(), QStringList() << parameters() << target); + if (parameters().isEmpty()) { + return IOFactory::startProcessDetached(executable(), { target }); + } + else { + return IOFactory::startProcessDetached(executable(), QStringList() << parameters() << target); + } }