Terminal: Add support for copy (OSC52)

Allows terminal apps like vim to set the clipboard, even from inside
an ssh/remote shell.

Change-Id: I1d068737ef65bb4541c3fc9c43870986865f1b45
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This commit is contained in:
Marcus Tillmanns
2023-08-03 08:25:10 +02:00
parent 0a69cdd277
commit 8ac9404725
5 changed files with 93 additions and 0 deletions

View File

@@ -179,4 +179,9 @@ void ShellIntegration::prepareProcess(Utils::Process &process)
process.setEnvironment(env);
}
void ShellIntegration::onSetClipboard(const QByteArray &text)
{
setClipboardAndSelection(QString::fromLocal8Bit(text));
}
} // namespace Terminal

View File

@@ -23,6 +23,8 @@ public:
void onBell() override;
void onTitle(const QString &title) override;
void onSetClipboard(const QByteArray &text) override;
void prepareProcess(Utils::Process &process);
signals:

45
src/plugins/terminal/tests/copy Executable file

File diff suppressed because one or more lines are too long