diff options
author | Marcus Tillmanns <[email protected]> | 2023-07-17 13:51:56 +0200 |
---|---|---|
committer | Marcus Tillmanns <[email protected]> | 2023-07-27 12:03:17 +0000 |
commit | 42ed82973cec46f74f9ac57ac9ee79cd50d74c9f (patch) | |
tree | de48c2d1317e78dd9d4ad7e0b565681662453f60 /src/plugins/terminal/shellintegration.cpp | |
parent | 209f3ba579e3cba07011fbb963bb7da8b8d19a0d (diff) |
Terminal: Create Terminal solution
Change-Id: If271fd23a84c49bbc25fcc3b9bc0939c7237d095
Reviewed-by: Cristian Adam <[email protected]>
Diffstat (limited to 'src/plugins/terminal/shellintegration.cpp')
-rw-r--r-- | src/plugins/terminal/shellintegration.cpp | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/src/plugins/terminal/shellintegration.cpp b/src/plugins/terminal/shellintegration.cpp index d981dc7269e..44cee54b978 100644 --- a/src/plugins/terminal/shellintegration.cpp +++ b/src/plugins/terminal/shellintegration.cpp @@ -3,10 +3,13 @@ #include "shellintegration.h" +#include "terminalsettings.h" + #include <utils/environment.h> #include <utils/filepath.h> #include <utils/stringutils.h> +#include <QApplication> #include <QLoggingCategory> Q_LOGGING_CATEGORY(integrationLog, "qtc.terminal.shellintegration", QtWarningMsg) @@ -74,9 +77,12 @@ bool ShellIntegration::canIntegrate(const Utils::CommandLine &cmdLine) return false; } -void ShellIntegration::onOsc(int cmd, const VTermStringFragment &fragment) +void ShellIntegration::onOsc(int cmd, std::string_view str, bool initial, bool final) { - QString d = QString::fromLocal8Bit(fragment.str, fragment.len); + Q_UNUSED(initial); + Q_UNUSED(final); + + QString d = QString::fromLocal8Bit(str); const auto [command, data] = Utils::splitAtFirst(d, ';'); if (cmd == 1337) { @@ -103,6 +109,17 @@ void ShellIntegration::onOsc(int cmd, const VTermStringFragment &fragment) } } +void ShellIntegration::onBell() +{ + if (settings().audibleBell.value()) + QApplication::beep(); +} + +void ShellIntegration::onTitle(const QString &title) +{ + emit titleChanged(title); +} + void ShellIntegration::prepareProcess(Utils::Process &process) { Environment env = process.environment().hasChanges() ? process.environment() |