Do not show pane if external tool output is ignored

Fixes: QTCREATORBUG-25728
Change-Id: I85650abb0227bdabe014ba324c1b3a3f35de4916
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
Eike Ziller
2021-05-17 13:45:01 +02:00
parent 32653e1a7b
commit 06fd916348

View File

@@ -666,7 +666,10 @@ void ExternalToolRunner::run()
const CommandLine cmd{m_resolvedExecutable, m_resolvedArguments, CommandLine::Raw};
m_process->setCommand(cmd);
m_process->setEnvironment(m_resolvedEnvironment);
MessageManager::writeDisrupting(tr("Starting external tool \"%1\"").arg(cmd.toUserOutput()));
const auto write = m_tool->outputHandling() == ExternalTool::ShowInPane
? [](const QString &m) { MessageManager::writeDisrupting(m); }
: [](const QString &m) { MessageManager::writeSilently(m); };
write(tr("Starting external tool \"%1\"").arg(cmd.toUserOutput()));
m_process->start();
}
@@ -686,7 +689,10 @@ void ExternalToolRunner::finished(int exitCode, QProcess::ExitStatus status)
}
if (m_tool->modifiesCurrentDocument())
DocumentManager::unexpectFileChange(m_expectedFileName);
MessageManager::writeFlashing(tr("\"%1\" finished").arg(m_resolvedExecutable.toUserOutput()));
const auto write = m_tool->outputHandling() == ExternalTool::ShowInPane
? [](const QString &m) { MessageManager::writeFlashing(m); }
: [](const QString &m) { MessageManager::writeSilently(m); };
write(tr("\"%1\" finished").arg(m_resolvedExecutable.toUserOutput()));
deleteLater();
}