From 9d2e7fe2c19d2d61223dcc30787ea83a0e447781 Mon Sep 17 00:00:00 2001 From: Aram Drevekenin Date: Wed, 27 Mar 2024 20:24:18 +0100 Subject: feat(plugins): add api to close current plugin instance (#3228) --- zellij-utils/src/plugin_api/plugin_command.proto | 1 + zellij-utils/src/plugin_api/plugin_command.rs | 8 ++++++++ 2 files changed, 9 insertions(+) (limited to 'zellij-utils/src/plugin_api') diff --git a/zellij-utils/src/plugin_api/plugin_command.proto b/zellij-utils/src/plugin_api/plugin_command.proto index b05c8ac8a..b961593e7 100644 --- a/zellij-utils/src/plugin_api/plugin_command.proto +++ b/zellij-utils/src/plugin_api/plugin_command.proto @@ -96,6 +96,7 @@ enum CommandName { ScanHostFolder = 82; WatchFilesystem = 83; DumpSessionLayout = 84; + CloseSelf = 85; } message PluginCommand { diff --git a/zellij-utils/src/plugin_api/plugin_command.rs b/zellij-utils/src/plugin_api/plugin_command.rs index 232a9f2dc..080dd9e28 100644 --- a/zellij-utils/src/plugin_api/plugin_command.rs +++ b/zellij-utils/src/plugin_api/plugin_command.rs @@ -871,6 +871,10 @@ impl TryFrom for PluginCommand { Some(_) => Err("DumpSessionLayout should have no payload, found a payload"), None => Ok(PluginCommand::DumpSessionLayout), }, + Some(CommandName::CloseSelf) => match protobuf_plugin_command.payload { + Some(_) => Err("CloseSelf should have no payload, found a payload"), + None => Ok(PluginCommand::CloseSelf), + }, None => Err("Unrecognized plugin command"), } } @@ -1389,6 +1393,10 @@ impl TryFrom for ProtobufPluginCommand { name: CommandName::DumpSessionLayout as i32, payload: None, }), + PluginCommand::CloseSelf => Ok(ProtobufPluginCommand { + name: CommandName::CloseSelf as i32, + payload: None, + }), } } } -- cgit v1.2.3