diff options
| author | Ogulcan Celik <ogulcancelik@gmail.com> | 2026-04-07 02:18:59 +0300 |
|---|---|---|
| committer | Ogulcan Celik <ogulcancelik@gmail.com> | 2026-04-07 02:18:59 +0300 |
| commit | 06f01df93d895298508173cd59a8cf8eb2dd5bdc (patch) | |
| tree | 40096a3f8d45d91160952e6d69fd8f78a892f60e /src/ui.rs | |
| parent | 6f201dcc13c449be3349ca3bf98bbf97164b1051 (diff) | |
fix: restore collapsed sidebar expand toggle
Diffstat (limited to 'src/ui.rs')
| -rw-r--r-- | src/ui.rs | 17 |
1 files changed, 12 insertions, 5 deletions
@@ -1054,6 +1054,16 @@ fn render_agent_detail(app: &AppState, frame: &mut Frame, area: Rect) { } } +pub(crate) fn collapsed_sidebar_toggle_rect(area: Rect) -> Rect { + let bottom_y = area.y + area.height.saturating_sub(1); + let content_w = area.width.saturating_sub(1); + if content_w == 0 || area.height == 0 { + return Rect::default(); + } + let x = area.x + content_w / 2; + Rect::new(x, bottom_y, 1, 1) +} + fn render_sidebar_toggle( app: &AppState, frame: &mut Frame, @@ -1066,9 +1076,8 @@ fn render_sidebar_toggle( if !collapsed { return; } - let bottom_y = area.y + area.height.saturating_sub(1); - let content_w = area.width.saturating_sub(1); - if content_w == 0 || area.height == 0 { + let toggle_area = collapsed_sidebar_toggle_rect(area); + if toggle_area == Rect::default() { return; } let icon_style = if app.update_available.is_some() { @@ -1076,8 +1085,6 @@ fn render_sidebar_toggle( } else { Style::default().fg(p.overlay0) }; - let x = area.x + content_w / 2; - let toggle_area = Rect::new(x, bottom_y, 1, 1); frame.render_widget(Paragraph::new(Span::styled("ยป", icon_style)), toggle_area); } |
