allow for arbitrary placeholder position in ext. tools

This commit is contained in:
Martin Rotter 2022-11-21 09:26:54 +01:00
parent 19c3577b6c
commit 22de6444db
3 changed files with 12 additions and 5 deletions

View file

@ -20,7 +20,7 @@ SettingsBrowserMail::SettingsBrowserMail(Settings* settings, QWidget* parent)
: SettingsPanel(settings, parent), m_proxyDetails(new NetworkProxyDetails(this)), m_ui(new Ui::SettingsBrowserMail) {
m_ui->setupUi(this);
m_ui->m_tabBrowserProxy->addTab(m_proxyDetails, tr("Network proxy"));
m_ui->m_tabBrowserProxy->insertTab(1, m_proxyDetails, tr("Network proxy"));
m_ui->m_lblExternalBrowserInfo->setHelpText(tr("Note that \"%1\" (without quotation marks) "
"is placeholder for URL of selected message."),
@ -82,7 +82,7 @@ SettingsBrowserMail::SettingsBrowserMail(Settings* settings, QWidget* parent)
#if !defined(USE_WEBENGINE)
// Remove WebEngine tab.
m_ui->m_tabBrowserProxy->removeTab(1);
m_ui->m_tabBrowserProxy->removeTab(2);
#else
connect(m_ui->m_txtWebEngineChromiumFlags, &QPlainTextEdit::textChanged, this, &SettingsBrowserMail::dirtifySettings);
connect(m_ui->m_txtWebEngineChromiumFlags, &QPlainTextEdit::textChanged, this, &SettingsBrowserMail::requireRestart);

View file

@ -175,7 +175,7 @@
</item>
</layout>
</widget>
<widget class="QWidget" name="tab">
<widget class="QWidget" name="m_tabExternalMail">
<attribute name="title">
<string>External e-mail client</string>
</attribute>
@ -292,7 +292,7 @@
</item>
</layout>
</widget>
<widget class="QWidget" name="tab_2">
<widget class="QWidget" name="m_tabExternalTools">
<attribute name="title">
<string>External tools</string>
</attribute>

View file

@ -75,7 +75,14 @@ bool ExternalTool::run(const QString& target) {
}
else {
auto pars = parameters();
pars += QSL(" \"%1\"").arg(target);
if (pars.contains(QSL("%1"))) {
// We replace existing target placeholder.
pars = pars.replace(QSL("%1"), target);
}
else {
pars += QSL(" \"%1\"").arg(target);
}
auto params = TextFactory::tokenizeProcessArguments(pars);