From 9ba3e8920eb80204ef0e47f7eef5d788d4ff1e38 Mon Sep 17 00:00:00 2001 From: Mroik Date: Wed, 16 Apr 2025 03:06:55 +0200 Subject: Use pattern matching for modifier --- src/event.rs | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/event.rs b/src/event.rs index 04fc994..2a16062 100644 --- a/src/event.rs +++ b/src/event.rs @@ -24,14 +24,16 @@ pub async fn handle_input(sender: &Sender) -> Result<(), Box> //crossterm::event::Event::FocusLost => todo!(), //crossterm::event::Event::Paste(_) => todo!(), crossterm::event::Event::Resize(_, _) => sender.send(Event::ForceRender).await?, - crossterm::event::Event::Key(key_event) => match key_event.code { - KeyCode::Char('c') if key_event.modifiers == KeyModifiers::CONTROL => { - sender.send(Event::Terminate).await? + crossterm::event::Event::Key(key_event) => { + match (key_event.code, key_event.modifiers) { + (KeyCode::Char('c'), KeyModifiers::CONTROL) => { + sender.send(Event::Terminate).await? + } + (KeyCode::Backspace, _) => sender.send(Event::Backspace).await?, + (KeyCode::Char(c), _) => sender.send(Event::KeyPress(c)).await?, + _ => (), } - KeyCode::Backspace => sender.send(Event::Backspace).await?, - KeyCode::Char(c) => sender.send(Event::KeyPress(c)).await?, - _ => (), - }, + } _ => (), } } -- cgit v1.3