aboutsummaryrefslogtreecommitdiff
path: root/src/app/api
diff options
context:
space:
mode:
authorOgulcan Celik <ogulcancelik@gmail.com>2026-05-31 21:18:40 +0300
committerOgulcan Celik <ogulcancelik@gmail.com>2026-05-31 21:18:40 +0300
commit8cf0e9b35b00f9dd91270fcd3931015d61ffd8a0 (patch)
tree2b76b158344fdbe0de17c6abe98564a262266d2f /src/app/api
parent859185b491c5a80e888ba8f9dd213d2c35baa034 (diff)
fix: confirm implicit worktree group close
refs #369
Diffstat (limited to 'src/app/api')
-rw-r--r--src/app/api/panes.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/app/api/panes.rs b/src/app/api/panes.rs
index 67bac8d3..0902ac39 100644
--- a/src/app/api/panes.rs
+++ b/src/app/api/panes.rs
@@ -387,6 +387,15 @@ impl App {
let Some((ws_idx, pane_id)) = self.parse_pane_id(&target.pane_id) else {
return pane_not_found(id, &target.pane_id);
};
+ if self.state.close_pane_would_close_workspace(ws_idx, pane_id)
+ && self.state.confirm_implicit_worktree_group_close(ws_idx)
+ {
+ return encode_error(
+ id,
+ "confirmation_required",
+ "closing this pane would close a worktree group",
+ );
+ }
let workspace_id = self.state.workspaces[ws_idx].id.clone();
let terminal_id = self.state.terminal_id_for_pane(ws_idx, pane_id);
let should_close_workspace = {