diff options
| author | David Heinemeier Hansson <david@hey.com> | 2026-08-09 00:37:57 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-08-09 01:37:57 +0300 |
| commit | 36a8d36a7258e08b40c01bf521b1f4006525f143 (patch) | |
| tree | edaf35204db558c4d6b5a79ab78b6d6e5138c9dc /src/app | |
| parent | 3a76fea2d858a7a5ef58615f1cc9aabaa30b80ee (diff) | |
feat: make outer pane borders configurable (#2535)
Diffstat (limited to 'src/app')
| -rw-r--r-- | src/app/agent_resume.rs | 23 | ||||
| -rw-r--r-- | src/app/api/panes.rs | 1 | ||||
| -rw-r--r-- | src/app/mod.rs | 2 | ||||
| -rw-r--r-- | src/app/state.rs | 2 |
4 files changed, 20 insertions, 8 deletions
diff --git a/src/app/agent_resume.rs b/src/app/agent_resume.rs index 1b459628..29c2c317 100644 --- a/src/app/agent_resume.rs +++ b/src/app/agent_resume.rs @@ -130,6 +130,7 @@ impl App { terminal_area, self.state.pane_borders, self.state.pane_gaps, + self.state.pane_outer_borders, ); if self.state.active == Some(ws_idx) @@ -290,15 +291,21 @@ fn derived_pending_agent_resume_pane_infos( terminal_area: Rect, pane_borders: bool, pane_gaps: bool, + pane_outer_borders: bool, ) -> Vec<crate::layout::PaneInfo> { - crate::ui::apply_pane_chrome(tab.layout.panes(terminal_area), pane_borders, pane_gaps) - .into_iter() - .map(|mut info| { - let pane_inner = crate::ui::pane_inner_rect(info.rect, info.borders); - info.inner_rect = stable_terminal_inner_rect(pane_inner); - info - }) - .collect() + crate::ui::apply_pane_chrome( + tab.layout.panes(terminal_area), + pane_borders, + pane_gaps, + pane_outer_borders, + ) + .into_iter() + .map(|mut info| { + let pane_inner = crate::ui::pane_inner_rect(info.rect, info.borders); + info.inner_rect = stable_terminal_inner_rect(pane_inner); + info + }) + .collect() } fn stable_terminal_inner_rect(pane_inner: Rect) -> Rect { diff --git a/src/app/api/panes.rs b/src/app/api/panes.rs index 4cbdd661..6615fa0a 100644 --- a/src/app/api/panes.rs +++ b/src/app/api/panes.rs @@ -1714,6 +1714,7 @@ impl App { tab.layout.panes(area), self.state.pane_borders, self.state.pane_gaps, + self.state.pane_outer_borders, ) .into_iter() .filter_map(|pane| { diff --git a/src/app/mod.rs b/src/app/mod.rs index 7fb8a01c..70d5fe93 100644 --- a/src/app/mod.rs +++ b/src/app/mod.rs @@ -631,6 +631,7 @@ impl App { prompt_new_tab_name: config.ui.prompt_new_tab_name, prompt_new_workspace_name: config.ui.prompt_new_workspace_name, pane_borders: config.ui.pane_borders, + pane_outer_borders: config.ui.pane_outer_borders, pane_scrollbars: config.ui.pane_scrollbars, pane_gaps: config.ui.pane_gaps, show_agent_labels_on_pane_borders: config.ui.show_agent_labels_on_pane_borders, @@ -1439,6 +1440,7 @@ impl App { self.state.prompt_new_tab_name = config.ui.prompt_new_tab_name; self.state.prompt_new_workspace_name = config.ui.prompt_new_workspace_name; self.state.pane_borders = config.ui.pane_borders; + self.state.pane_outer_borders = config.ui.pane_outer_borders; self.state.pane_scrollbars = config.ui.pane_scrollbars; self.state.pane_gaps = config.ui.pane_gaps; self.state.show_agent_labels_on_pane_borders = diff --git a/src/app/state.rs b/src/app/state.rs index 97266344..04876290 100644 --- a/src/app/state.rs +++ b/src/app/state.rs @@ -1464,6 +1464,7 @@ pub struct AppState { pub prompt_new_tab_name: bool, pub prompt_new_workspace_name: bool, pub pane_borders: bool, + pub pane_outer_borders: bool, pub pane_scrollbars: bool, pub pane_gaps: bool, pub show_agent_labels_on_pane_borders: bool, @@ -1833,6 +1834,7 @@ impl AppState { prompt_new_tab_name: true, prompt_new_workspace_name: false, pane_borders: true, + pane_outer_borders: true, pane_scrollbars: true, pane_gaps: false, show_agent_labels_on_pane_borders: false, |
