diff options
| author | Aram Drevekenin <aram@poor.dev> | 2026-03-28 09:19:54 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-03-28 09:19:54 +0100 |
| commit | 608cc9905d0e53cda32f22b184578915b7f0f7b4 (patch) | |
| tree | 64e60645b412e3c9cecf83e8889ee1c6f0024593 /zellij-utils/src/ipc/protobuf_conversion.rs | |
| parent | CLI focus-pane-id and are-floating-panes-visible actions (#4926) (diff) | |
| download | sl0ppij-608cc9905d0e53cda32f22b184578915b7f0f7b4.tar.gz sl0ppij-608cc9905d0e53cda32f22b184578915b7f0f7b4.tar.xz sl0ppij-608cc9905d0e53cda32f22b184578915b7f0f7b4.zip | |
Support OSC-99 desktop notifications (#4931)
* initial implementation
* tests
* fix: always report to zellij, only report to app if it wants a report
* rustfmt
* fix: always report capabilities to panes requesting them
* rustfmt
* add pr
Diffstat (limited to 'zellij-utils/src/ipc/protobuf_conversion.rs')
| -rw-r--r-- | zellij-utils/src/ipc/protobuf_conversion.rs | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/zellij-utils/src/ipc/protobuf_conversion.rs b/zellij-utils/src/ipc/protobuf_conversion.rs index 093cff4e..5c78a445 100644 --- a/zellij-utils/src/ipc/protobuf_conversion.rs +++ b/zellij-utils/src/ipc/protobuf_conversion.rs @@ -3,15 +3,15 @@ use crate::{ client_to_server_msg, server_to_client_msg, ActionMsg, AttachClientMsg, AttachWatcherClientMsg, BackgroundColorMsg, CliPipeOutputMsg, ClientExitedMsg, ClientToServerMsg as ProtoClientToServerMsg, ColorRegistersMsg, ConfigFileUpdatedMsg, - ConnStatusMsg, ConnectedMsg, DetachSessionMsg, ExitMsg, ExitReason as ProtoExitReason, - FailedToStartWebServerMsg, FirstClientConnectedMsg, ForegroundColorMsg, - InputMode as ProtoInputMode, KeyMsg, KillSessionMsg, LayoutMetadata as ProtoLayoutMetadata, - LogErrorMsg, LogMsg, PaneMetadata as ProtoPaneMetadata, PaneRenderUpdateMsg, - QueryTerminalSizeMsg, RenamedSessionMsg, RenderMsg, - ServerToClientMsg as ProtoServerToClientMsg, StartWebServerMsg, SubscribeToPaneRendersMsg, - SubscribedPaneClosedMsg, SwitchSessionMsg, TabMetadata as ProtoTabMetadata, - TerminalPixelDimensionsMsg, TerminalResizeMsg, UnblockCliPipeInputMsg, - UnblockInputThreadMsg, WebServerStartedMsg, + ConnStatusMsg, ConnectedMsg, DesktopNotificationResponseMsg, DetachSessionMsg, ExitMsg, + ExitReason as ProtoExitReason, FailedToStartWebServerMsg, FirstClientConnectedMsg, + ForegroundColorMsg, InputMode as ProtoInputMode, KeyMsg, KillSessionMsg, + LayoutMetadata as ProtoLayoutMetadata, LogErrorMsg, LogMsg, + PaneMetadata as ProtoPaneMetadata, PaneRenderUpdateMsg, QueryTerminalSizeMsg, + RenamedSessionMsg, RenderMsg, ServerToClientMsg as ProtoServerToClientMsg, + StartWebServerMsg, SubscribeToPaneRendersMsg, SubscribedPaneClosedMsg, SwitchSessionMsg, + TabMetadata as ProtoTabMetadata, TerminalPixelDimensionsMsg, TerminalResizeMsg, + UnblockCliPipeInputMsg, UnblockInputThreadMsg, WebServerStartedMsg, }, data::{InputMode, PaneId}, errors::prelude::*, @@ -124,6 +124,11 @@ impl From<ClientToServerMsg> for ProtoClientToServerMsg { scrollback: scrollback.map(|s| s as u32), ansi, }), + ClientToServerMsg::DesktopNotificationResponse { raw_bytes } => { + client_to_server_msg::Message::DesktopNotificationResponse( + DesktopNotificationResponseMsg { raw_bytes }, + ) + }, }; ProtoClientToServerMsg { @@ -247,6 +252,11 @@ impl TryFrom<ProtoClientToServerMsg> for ClientToServerMsg { ansi: msg.ansi, }) }, + Some(client_to_server_msg::Message::DesktopNotificationResponse(msg)) => { + Ok(ClientToServerMsg::DesktopNotificationResponse { + raw_bytes: msg.raw_bytes, + }) + }, None => Err(anyhow!("Empty ClientToServerMsg message")), } } |
