aboutsummaryrefslogtreecommitdiff
path: root/src/ui
diff options
context:
space:
mode:
authorOgulcan Celik <ogulcancelik@gmail.com>2026-05-20 22:03:49 +0300
committerOgulcan Celik <ogulcancelik@gmail.com>2026-05-20 22:08:26 +0300
commitdf357b250c0fcf4edf2681d4f114e199afb51899 (patch)
treeeba744d9238057e8758e2098670e0561d920d998 /src/ui
parentc584037c77c63f6a08f8837f357c89432b8043e7 (diff)
fix: clarify keybinding conflict warnings
refs #154
Diffstat (limited to 'src/ui')
-rw-r--r--src/ui/keybind_help.rs3
-rw-r--r--src/ui/menus.rs6
-rw-r--r--src/ui/status.rs41
3 files changed, 26 insertions, 24 deletions
diff --git a/src/ui/keybind_help.rs b/src/ui/keybind_help.rs
index fe3d7582..fb79077e 100644
--- a/src/ui/keybind_help.rs
+++ b/src/ui/keybind_help.rs
@@ -56,8 +56,7 @@ pub(super) fn keybind_help_groups(
),
(keybind_label(&kb.help), "keybinds"),
(keybind_label(&kb.settings), "settings"),
- (keybind_label(&kb.quit), "quit"),
- (keybind_label(&kb.detach), "detach from server"),
+ (keybind_label(&kb.detach), "detach"),
(keybind_label(&kb.reload_config), "reload config"),
(
keybind_label(&kb.open_notification_target),
diff --git a/src/ui/menus.rs b/src/ui/menus.rs
index aa5e3b79..c83b569f 100644
--- a/src/ui/menus.rs
+++ b/src/ui/menus.rs
@@ -76,7 +76,7 @@ pub(super) fn render_navigate_overlay(app: &AppState, frame: &mut Frame, area: R
let resize = prefix_rhs_label(&kb.resize_mode);
let help = prefix_rhs_label(&kb.help);
let settings = prefix_rhs_label(&kb.settings);
- let quit = prefix_rhs_label(&kb.quit);
+ let detach = prefix_rhs_label(&kb.detach);
let line = Line::from(vec![
Span::styled(" NAVIGATE ", mode_style),
Span::raw(" "),
@@ -102,8 +102,8 @@ pub(super) fn render_navigate_overlay(app: &AppState, frame: &mut Frame, area: R
Span::styled(" keybinds ", dim),
Span::styled(settings, key),
Span::styled(" settings ", dim),
- Span::styled(quit, key),
- Span::styled(" quit", dim),
+ Span::styled(detach, key),
+ Span::styled(" detach", dim),
]);
let overlay_y = area.y + area.height.saturating_sub(1);
diff --git a/src/ui/status.rs b/src/ui/status.rs
index bb506da6..28f5d17b 100644
--- a/src/ui/status.rs
+++ b/src/ui/status.rs
@@ -75,26 +75,29 @@ pub(super) fn render_toast_notification(
}
pub(super) fn render_config_diagnostic(frame: &mut Frame, area: Rect, message: &str, p: &Palette) {
- let text = format!(" config warning: {message} ");
- let width = text.len() as u16 + 2;
- let notif_area = Rect::new(
- area.x + area.width.saturating_sub(width.min(area.width)),
- area.y,
- width.min(area.width),
- 1,
- );
+ let style = Style::default()
+ .fg(panel_contrast_fg(p))
+ .bg(p.yellow)
+ .add_modifier(Modifier::BOLD);
- frame.render_widget(Clear, notif_area);
- frame.render_widget(
- Paragraph::new(Span::styled(
- text,
- Style::default()
- .fg(panel_contrast_fg(p))
- .bg(p.yellow)
- .add_modifier(Modifier::BOLD),
- )),
- notif_area,
- );
+ for (row, line) in message
+ .lines()
+ .filter(|line| !line.trim().is_empty())
+ .take(area.height as usize)
+ .enumerate()
+ {
+ let text = format!(" config warning: {line} ");
+ let width = (text.len() as u16).min(area.width);
+ let notif_area = Rect::new(
+ area.x + area.width.saturating_sub(width),
+ area.y + row as u16,
+ width,
+ 1,
+ );
+
+ frame.render_widget(Clear, notif_area);
+ frame.render_widget(Paragraph::new(Span::styled(text, style)), notif_area);
+ }
}
pub(super) fn state_dot(state: AgentState, seen: bool, p: &Palette) -> (&'static str, Style) {