From cc8e924ce828d237d7cdd245b794c532a4ee80d8 Mon Sep 17 00:00:00 2001 From: pablu Date: Thu, 7 May 2026 13:07:32 +0200 Subject: working search --- src/event.rs | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) (limited to 'src/event.rs') diff --git a/src/event.rs b/src/event.rs index bfe1fa5..52013a5 100644 --- a/src/event.rs +++ b/src/event.rs @@ -6,11 +6,28 @@ use crate::app::App; pub fn handle_event(app: &mut App) -> io::Result { if let Event::Key(key) = event::read()? { - match key.code { - KeyCode::Char('q') => return Ok(true), - KeyCode::Char('j') => app.list_state.select_next(), - KeyCode::Char('k') => app.list_state.select_previous(), - _ => return Ok(false), + if !app.showing_search_window { + match key.code { + KeyCode::Char('q') => return Ok(true), + KeyCode::Char('j') => app.list_state.select_next(), + KeyCode::Char('k') => app.list_state.select_previous(), + KeyCode::Char('/') => app.toggle_search_window(), + _ => return Ok(false), + } + } else { + match key.code { + KeyCode::Esc => app.toggle_search_window(), + KeyCode::Enter => { + app.search(); + app.toggle_search_window(); + () + } + _ => { + app.textarea.input_without_shortcuts(key); + app.search_found = Some(app.search()); + () + } + } } } -- cgit 1.3.1