diff options
| author | Aram Drevekenin <aram@poor.dev> | 2026-03-27 16:23:14 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-03-27 16:23:14 +0100 |
| commit | 802c96f5fca9de479af7c249130a7928bc441349 (patch) | |
| tree | 8ebf6ef1d535d5e1ea706c823eae589bc0809edd /zellij-utils/src/plugin_api/action.rs | |
| parent | docs(changelog): riscv64 binaries (diff) | |
| download | sl0ppij-802c96f5fca9de479af7c249130a7928bc441349.tar.gz sl0ppij-802c96f5fca9de479af7c249130a7928bc441349.tar.xz sl0ppij-802c96f5fca9de479af7c249130a7928bc441349.zip | |
CLI focus-pane-id and are-floating-panes-visible actions (#4926)
* add zellij action focus-pane-id
* zellij action are-floating-panes-visible
* fix e2e tests
* add pr
Diffstat (limited to 'zellij-utils/src/plugin_api/action.rs')
| -rw-r--r-- | zellij-utils/src/plugin_api/action.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/zellij-utils/src/plugin_api/action.rs b/zellij-utils/src/plugin_api/action.rs index 93d0a556..4384eb68 100644 --- a/zellij-utils/src/plugin_api/action.rs +++ b/zellij-utils/src/plugin_api/action.rs @@ -7,6 +7,7 @@ pub use super::generated_api::api::{ run_plugin_or_alias::PluginType, Action as ProtobufAction, ActionName as ProtobufActionName, + AreFloatingPanesVisiblePayload, BareKey as ProtobufBareKey, // New layout-related types CommandOrPlugin as ProtobufCommandOrPlugin, @@ -424,6 +425,17 @@ impl TryFrom<ProtobufAction> for Action { None => Ok(Action::HideFloatingPanes { tab_id: None }), _ => Err("Wrong payload for HideFloatingPanes"), }, + Some(ProtobufActionName::AreFloatingPanesVisible) => { + match protobuf_action.optional_payload { + Some(OptionalPayload::AreFloatingPanesVisiblePayload(payload)) => { + Ok(Action::AreFloatingPanesVisible { + tab_id: payload.tab_id.map(|id| id as usize), + }) + }, + None => Ok(Action::AreFloatingPanesVisible { tab_id: None }), + _ => Err("Wrong payload for AreFloatingPanesVisible"), + } + }, Some(ProtobufActionName::CloseFocus) => match protobuf_action.optional_payload { Some(_) => Err("CloseFocus should not have a payload"), None => Ok(Action::CloseFocus), @@ -1086,6 +1098,7 @@ impl TryFrom<Action> for ProtobufAction { | Action::RenamePaneByPaneId { .. } | Action::UndoRenamePaneByPaneId { .. } | Action::TogglePanePinnedByPaneId { .. } + | Action::FocusPaneByPaneId { .. } | Action::UndoRenameTabByTabId { .. } | Action::ToggleActiveSyncTabByTabId { .. } | Action::ToggleFloatingPanesByTabId { .. } @@ -1380,6 +1393,14 @@ impl TryFrom<Action> for ProtobufAction { }, )), }), + Action::AreFloatingPanesVisible { tab_id } => Ok(ProtobufAction { + name: ProtobufActionName::AreFloatingPanesVisible as i32, + optional_payload: Some(OptionalPayload::AreFloatingPanesVisiblePayload( + AreFloatingPanesVisiblePayload { + tab_id: tab_id.map(|id| id as u32), + }, + )), + }), Action::CloseFocus => Ok(ProtobufAction { name: ProtobufActionName::CloseFocus as i32, optional_payload: None, |
