Duplicate active split panes

This commit is contained in:
2026-05-08 08:03:15 -04:00
parent 5179a1adf7
commit 1186509e26
5 changed files with 150 additions and 1 deletions
+14
View File
@@ -95,6 +95,20 @@ impl SplitLayout {
true
}
pub fn add_pane_after_tab(&mut self, after_tab_id: &TabId, pane: SplitPane) -> bool {
if self.panes.len() >= MAX_SPLIT_PANES || self.contains_tab(pane.tab_id()) {
return false;
}
let Some(index) = self.panes.iter().position(|existing| existing.tab_id() == after_tab_id)
else {
return false;
};
self.panes.insert(index + 1, pane);
true
}
pub fn remove_tab(&mut self, tab_id: &TabId) -> bool {
let original_len = self.panes.len();
self.panes.retain(|pane| pane.tab_id() != tab_id);