diff options
author | Marcus Tillmanns <marcus.tillmanns@qt.io> | 2023-05-11 15:47:25 +0200 |
---|---|---|
committer | Marcus Tillmanns <marcus.tillmanns@qt.io> | 2023-05-12 06:41:13 +0000 |
commit | 0c8ae843c6cd2516e4394cd102eeec254d9d4ac2 (patch) | |
tree | b30a4a6a2f1d69f0a63f9a01030b00317442234f | |
parent | 946da55f6eaa881f0d0a5771681828168121d68a (diff) | |
download | qt-creator-0c8ae843c6cd2516e4394cd102eeec254d9d4ac2.tar.gz |
Terminal: Switch Mode to ensure visible
Change-Id: I6d92ac07b7f6e7d5ed3fa4d27531d1cb8ec1a36f
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
-rw-r--r-- | src/plugins/terminal/terminalpane.cpp | 6 | ||||
-rw-r--r-- | src/plugins/terminal/terminalprocessimpl.cpp | 3 |
2 files changed, 5 insertions, 4 deletions
diff --git a/src/plugins/terminal/terminalpane.cpp b/src/plugins/terminal/terminalpane.cpp index f5c4046f92..92ad595191 100644 --- a/src/plugins/terminal/terminalpane.cpp +++ b/src/plugins/terminal/terminalpane.cpp @@ -175,7 +175,7 @@ void TerminalPane::openTerminal(const OpenTerminalParameters ¶meters) { OpenTerminalParameters parametersCopy{parameters}; if (!m_isVisible) - emit showPage(0); + emit showPage(IOutputPane::ModeSwitch); if (!parametersCopy.workingDirectory) { const std::optional<FilePath> projectDir = startupProjectDirectory(); @@ -199,7 +199,7 @@ void TerminalPane::openTerminal(const OpenTerminalParameters ¶meters) void TerminalPane::addTerminal(TerminalWidget *terminal, const QString &title) { if (!m_isVisible) - emit showPage(0); + emit showPage(IOutputPane::ModeSwitch); m_tabWidget->setCurrentIndex(m_tabWidget->addTab(terminal, title)); setupTerminalWidget(terminal); @@ -209,7 +209,7 @@ void TerminalPane::addTerminal(TerminalWidget *terminal, const QString &title) void TerminalPane::ensureVisible(TerminalWidget *terminal) { if (!m_isVisible) - emit showPage(0); + emit showPage(IOutputPane::ModeSwitch); m_tabWidget->setCurrentWidget(terminal); terminal->setFocus(); } diff --git a/src/plugins/terminal/terminalprocessimpl.cpp b/src/plugins/terminal/terminalprocessimpl.cpp index ef3c4acf64..d2b76e51a6 100644 --- a/src/plugins/terminal/terminalprocessimpl.cpp +++ b/src/plugins/terminal/terminalprocessimpl.cpp @@ -44,10 +44,11 @@ public: terminal->setShellName(setup.m_commandLine.executable().fileName()); m_terminalPane->addTerminal(terminal, "App"); } else { - m_terminalPane->ensureVisible(terminal); terminal->restart(openParameters); } + m_terminalPane->ensureVisible(terminal); + connect(terminal, &TerminalWidget::destroyed, m_process, [process = m_process] { if (process->inferiorProcessId()) process->emitFinished(-1, QProcess::CrashExit); |