Allow direct terminal typing and collapsible session panels

This commit is contained in:
2026-03-01 09:58:21 -07:00
parent 614d31fa71
commit 2b4f498259
5 changed files with 208 additions and 52 deletions
+9 -5
View File
@@ -6,14 +6,16 @@
#include <QWidget>
#include <QPointer>
#include <optional>
class QLabel;
class QLineEdit;
class QPlainTextEdit;
class QPushButton;
class QThread;
class SessionBackend;
class TerminalView;
class QToolButton;
class SessionTab : public QWidget
{
@@ -38,7 +40,6 @@ private slots:
void onDisconnectClicked();
void onReconnectClicked();
void onCopyErrorClicked();
void onSendInputClicked();
void onClearTerminalClicked();
void onBackendStateChanged(SessionState state, const QString& message);
@@ -56,15 +57,17 @@ private:
QLabel* m_statusLabel;
QLabel* m_errorLabel;
QPlainTextEdit* m_terminalOutput;
QLineEdit* m_terminalInput;
TerminalView* m_terminalOutput;
QPlainTextEdit* m_eventLog;
QPushButton* m_connectButton;
QPushButton* m_disconnectButton;
QPushButton* m_reconnectButton;
QPushButton* m_copyErrorButton;
QPushButton* m_sendInputButton;
QPushButton* m_clearTerminalButton;
QToolButton* m_toggleDetailsButton;
QToolButton* m_toggleEventsButton;
QWidget* m_detailsPanel;
QWidget* m_eventsPanel;
void setupUi();
std::optional<SessionConnectOptions> buildConnectOptions();
@@ -73,6 +76,7 @@ private:
void setState(SessionState state, const QString& message);
QString stateSuffix() const;
void refreshActionButtons();
void setPanelExpanded(QToolButton* button, QWidget* panel, const QString& name, bool expanded);
};
#endif