aboutsummaryrefslogtreecommitdiffstats
path: root/zellij-tile
diff options
context:
space:
mode:
authorAram Drevekenin <aram@poor.dev>2025-01-30 17:04:36 +0100
committerGitHub <noreply@github.com>2025-01-30 17:04:36 +0100
commitc4cb9d3d8138346f3257fdcdd6a8f9967b88a402 (patch)
treeafafe8f7184e2c29bbfa1fe2f81d86c9d23a9fdc /zellij-tile
parentdocs(changelog): stacked resize (diff)
downloadsl0ppij-c4cb9d3d8138346f3257fdcdd6a8f9967b88a402.tar.gz
sl0ppij-c4cb9d3d8138346f3257fdcdd6a8f9967b88a402.tar.xz
sl0ppij-c4cb9d3d8138346f3257fdcdd6a8f9967b88a402.zip
feat(plugins): API to change floating pane coordinates (#3958)
* basic functionality through the cli * added to plugin api * add display area and viewport size to TabInfo * fix tests and add new one * some cleanups * refactor: extract pane_id parsing logic * style(fmt): rustfmt
Diffstat (limited to 'zellij-tile')
-rw-r--r--zellij-tile/src/shim.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/zellij-tile/src/shim.rs b/zellij-tile/src/shim.rs
index d4c65755..63203901 100644
--- a/zellij-tile/src/shim.rs
+++ b/zellij-tile/src/shim.rs
@@ -1149,6 +1149,15 @@ pub fn stack_panes(pane_ids: Vec<PaneId>) {
unsafe { host_run_plugin_command() };
}
+pub fn change_floating_panes_coordinates(
+ pane_ids_and_coordinates: Vec<(PaneId, FloatingPaneCoordinates)>,
+) {
+ let plugin_command = PluginCommand::ChangeFloatingPanesCoordinates(pane_ids_and_coordinates);
+ let protobuf_plugin_command: ProtobufPluginCommand = plugin_command.try_into().unwrap();
+ object_to_stdout(&protobuf_plugin_command.encode_to_vec());
+ unsafe { host_run_plugin_command() };
+}
+
// Utility Functions
#[allow(unused)]