diff --git a/src/ui/search_tui.rs b/src/ui/search_tui.rs index f1c4a80..5d331e9 100644 --- a/src/ui/search_tui.rs +++ b/src/ui/search_tui.rs @@ -217,7 +217,10 @@ impl SearchTui { // Show cursor in input mode if self.mode == Mode::Input { - f.set_cursor_position((area.x + self.input.len() as u16 + 1, area.y + 1)); + // Calculate cursor position safely, constraining it to the input area + let max_input_width = area.width.saturating_sub(2); // borders + let input_len = self.input.len().min(max_input_width as usize) as u16; + f.set_cursor_position((area.x + input_len + 1, area.y + 1)); } }