Terminal: Add shell integration

Change-Id: Ic1e226b56f0103e5a6e7764073ab7ab241b67baa
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
This commit is contained in:
Marcus Tillmanns
2023-03-10 13:55:17 +01:00
parent 3507229a00
commit bd52e53dbf
22 changed files with 1129 additions and 15 deletions

View File

@@ -0,0 +1,34 @@
// Copyright (C) 2022 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0+ OR GPL-3.0 WITH
// Qt-GPL-exception-1.0
#pragma once
#include <utils/commandline.h>
#include <utils/qtcprocess.h>
#include <vterm.h>
#include <QTemporaryDir>
namespace Terminal {
class ShellIntegration : public QObject
{
Q_OBJECT
public:
static bool canIntegrate(const Utils::CommandLine &cmdLine);
void onOsc(int cmd, const VTermStringFragment &fragment);
void prepareProcess(Utils::QtcProcess &process);
signals:
void commandChanged(const Utils::CommandLine &command);
void currentDirChanged(const QString &dir);
private:
QTemporaryDir m_tempDir;
};
} // namespace Terminal