From bf9cc201244946496b4d950046bf7edcc4892994 Mon Sep 17 00:00:00 2001 From: Ogulcan Celik Date: Thu, 28 May 2026 04:11:56 +0300 Subject: fix: preserve live handoff terminal state --- src/app/state.rs | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/app/state.rs') diff --git a/src/app/state.rs b/src/app/state.rs index 7c47973c..37edc9df 100644 --- a/src/app/state.rs +++ b/src/app/state.rs @@ -1046,6 +1046,7 @@ pub struct AppState { std::collections::HashMap, /// Terminal ids whose size is currently owned by a direct attach client. pub direct_attach_resize_locks: std::collections::HashSet, + pub(crate) pane_id_aliases: std::collections::HashMap, pub workspaces: Vec, pub active: Option, pub(crate) previous_pane_focus: Option, @@ -1182,6 +1183,10 @@ impl AppState { self.session_dirty = true; } + pub(crate) fn remove_alias_shadowed_by_new_pane(&mut self, pane_id: PaneId) { + self.pane_id_aliases.remove(&pane_id.raw()); + } + pub fn sound_enabled(&self) -> bool { self.sound.enabled } @@ -1349,6 +1354,7 @@ impl AppState { Self { terminals: std::collections::HashMap::new(), direct_attach_resize_locks: std::collections::HashSet::new(), + pane_id_aliases: std::collections::HashMap::new(), workspaces: Vec::new(), active: None, previous_pane_focus: None, -- cgit v1.2.3