aboutsummaryrefslogtreecommitdiffstats
path: root/zellij-utils/src/client_server_contract
diff options
context:
space:
mode:
authorAram Drevekenin <aram@poor.dev>2026-03-07 16:33:05 +0100
committerGitHub <noreply@github.com>2026-03-07 16:33:05 +0100
commit58cb2267fd7994ad9abb2df9792ec452a2deab45 (patch)
treed0ab9dbbc147bd5db5b7dee5c1687069cc946d99 /zellij-utils/src/client_server_contract
parentUpdate CHANGELOG.md (diff)
downloadsl0ppij-58cb2267fd7994ad9abb2df9792ec452a2deab45.tar.gz
sl0ppij-58cb2267fd7994ad9abb2df9792ec452a2deab45.tar.xz
sl0ppij-58cb2267fd7994ad9abb2df9792ec452a2deab45.zip
Allow subscribing to pane viewport updates (renders) from the CLI (#4814)
* initial subscribe implementation * tests for subscribe * update cli help * rustfmt * add pr
Diffstat (limited to 'zellij-utils/src/client_server_contract')
-rw-r--r--zellij-utils/src/client_server_contract/client_to_server.proto6
-rw-r--r--zellij-utils/src/client_server_contract/server_to_client.proto14
2 files changed, 20 insertions, 0 deletions
diff --git a/zellij-utils/src/client_server_contract/client_to_server.proto b/zellij-utils/src/client_server_contract/client_to_server.proto
index 7d922e6d..8fdedac2 100644
--- a/zellij-utils/src/client_server_contract/client_to_server.proto
+++ b/zellij-utils/src/client_server_contract/client_to_server.proto
@@ -21,6 +21,7 @@ message ClientToServerMsg {
WebServerStartedMsg web_server_started = 14;
FailedToStartWebServerMsg failed_to_start_web_server = 15;
AttachWatcherClientMsg attach_watcher_client = 16;
+ SubscribeToPaneRendersMsg subscribe_to_pane_renders = 17;
}
}
@@ -97,3 +98,8 @@ message WebServerStartedMsg {
message FailedToStartWebServerMsg {
string error = 1;
}
+
+message SubscribeToPaneRendersMsg {
+ repeated PaneId pane_ids = 1;
+ optional uint32 scrollback = 2;
+}
diff --git a/zellij-utils/src/client_server_contract/server_to_client.proto b/zellij-utils/src/client_server_contract/server_to_client.proto
index 57813ebb..e0b8b529 100644
--- a/zellij-utils/src/client_server_contract/server_to_client.proto
+++ b/zellij-utils/src/client_server_contract/server_to_client.proto
@@ -18,6 +18,8 @@ message ServerToClientMsg {
StartWebServerMsg start_web_server = 11;
RenamedSessionMsg renamed_session = 12;
ConfigFileUpdatedMsg config_file_updated = 13;
+ PaneRenderUpdateMsg pane_render_update = 14;
+ SubscribedPaneClosedMsg subscribed_pane_closed = 15;
}
}
@@ -74,3 +76,15 @@ message RenamedSessionMsg {
message ConfigFileUpdatedMsg {
// Empty message
}
+
+message PaneRenderUpdateMsg {
+ PaneId pane_id = 1;
+ repeated string viewport = 2;
+ repeated string scrollback = 3;
+ bool has_scrollback = 4;
+ bool is_initial = 5;
+}
+
+message SubscribedPaneClosedMsg {
+ PaneId pane_id = 1;
+}