diff options
| author | pablu <me@pablu.de> | 2026-05-07 17:19:01 +0200 |
|---|---|---|
| committer | pablu <me@pablu.de> | 2026-05-07 17:19:01 +0200 |
| commit | 4025459d8405e2dfb3d54d6c49fdf2cf8c990bc5 (patch) | |
| tree | 00e754014229e150a5fb6054cf79a63c57d68a76 /src/event.rs | |
| parent | 673853a8857c06a1b3e38122818e4eb0a3a77bb6 (diff) | |
Metadata field
Diffstat (limited to 'src/event.rs')
| -rw-r--r-- | src/event.rs | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/src/event.rs b/src/event.rs index 530e244..4b0ac43 100644 --- a/src/event.rs +++ b/src/event.rs @@ -1,6 +1,6 @@ use std::io; -use ratatui::crossterm::event::{self, Event, KeyCode}; +use ratatui::crossterm::event::{self, Event, KeyCode, KeyModifiers}; use crate::app::App; @@ -15,6 +15,28 @@ pub fn handle_event(app: &mut App) -> io::Result<bool> { KeyCode::Char('n') => app.next_search(), KeyCode::Char('N') => app.prev_search(), + KeyCode::Char('d') => match key.modifiers { + KeyModifiers::CONTROL => app + .list_state + .select(Some(app.list_state.selected().unwrap_or(0) + 30)), + + _ => return Ok(false), + }, + + KeyCode::Char('u') => match key.modifiers { + KeyModifiers::CONTROL => { + if let Some(selected) = app.list_state.selected() { + if selected < 30 { + app.list_state.select(Some(0)); + } else { + app.list_state.select(Some(selected - 30)) + } + } + } + + _ => return Ok(false), + }, + _ => return Ok(false), } } else { |
