aboutsummaryrefslogtreecommitdiffstats
path: root/zellij-utils/src/plugin_api/plugin_command.rs
diff options
context:
space:
mode:
authorDawidPietrykowski <53954695+DawidPietrykowski@users.noreply.github.com>2026-06-25 18:12:51 +0200
committerGitHub <noreply@github.com>2026-06-25 18:12:51 +0200
commitebd731b0ff12737a6e2160a255280534ef3991bd (patch)
tree4313963a269205391aa519fd090ea1de2b7cc4af /zellij-utils/src/plugin_api/plugin_command.rs
parenttests: add more integration tests (#5308) (diff)
downloadsl0ppij-ebd731b0ff12737a6e2160a255280534ef3991bd.tar.gz
sl0ppij-ebd731b0ff12737a6e2160a255280534ef3991bd.tar.xz
sl0ppij-ebd731b0ff12737a6e2160a255280534ef3991bd.zip
feat(panes): `FocusLastPane` action (#4241)
* feat(panes): focus last pane (#4142) * add tests * add client id parameter to `add_floating_pane` * add action for floating panes * add tests for floating panes * add keybinds to configs * rebase fixes * simplify focus logic when adding stacked pane * formatting fix * formatting fix 2 * fix: make sure expanding pane always focuses it for all clients in stack * add pr * fix rebase --------- Co-authored-by: Aram Drevekenin <aram@poor.dev>
Diffstat (limited to 'zellij-utils/src/plugin_api/plugin_command.rs')
-rw-r--r--zellij-utils/src/plugin_api/plugin_command.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/zellij-utils/src/plugin_api/plugin_command.rs b/zellij-utils/src/plugin_api/plugin_command.rs
index 42b0774f..546c3586 100644
--- a/zellij-utils/src/plugin_api/plugin_command.rs
+++ b/zellij-utils/src/plugin_api/plugin_command.rs
@@ -980,6 +980,12 @@ impl TryFrom<ProtobufPluginCommand> for PluginCommand {
}
Ok(PluginCommand::FocusPreviousPane)
},
+ Some(CommandName::FocusLastPane) => {
+ if protobuf_plugin_command.payload.is_some() {
+ return Err("FocusLastPane should not have a payload");
+ }
+ Ok(PluginCommand::FocusLastPane)
+ },
Some(CommandName::MoveFocus) => match protobuf_plugin_command.payload {
Some(Payload::MoveFocusPayload(move_payload)) => match move_payload.direction {
Some(direction) => Ok(PluginCommand::MoveFocus(direction.try_into()?)),
@@ -3005,6 +3011,10 @@ impl TryFrom<PluginCommand> for ProtobufPluginCommand {
name: CommandName::FocusPreviousPane as i32,
payload: None,
}),
+ PluginCommand::FocusLastPane => Ok(ProtobufPluginCommand {
+ name: CommandName::FocusLastPane as i32,
+ payload: None,
+ }),
PluginCommand::MoveFocus(direction) => Ok(ProtobufPluginCommand {
name: CommandName::MoveFocus as i32,
payload: Some(Payload::MoveFocusPayload(MovePayload {