Read input only when key was pressed

pull/690/head
朕与将军解战袍 1 year ago committed by GitHub
parent fafad6c961
commit 3dc472c044
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -10,7 +10,7 @@
/// * Pressing Enter pushes the current input in the history of previous /// * Pressing Enter pushes the current input in the history of previous
/// messages /// messages
use crossterm::{ use crossterm::{
event::{self, DisableMouseCapture, EnableMouseCapture, Event, KeyCode}, event::{self, DisableMouseCapture, EnableMouseCapture, Event, KeyCode, KeyEventKind},
execute, execute,
terminal::{disable_raw_mode, enable_raw_mode, EnterAlternateScreen, LeaveAlternateScreen}, terminal::{disable_raw_mode, enable_raw_mode, EnterAlternateScreen, LeaveAlternateScreen},
}; };
@ -93,7 +93,7 @@ fn run_app<B: Backend>(terminal: &mut Terminal<B>, mut app: App) -> io::Result<(
} }
_ => {} _ => {}
}, },
InputMode::Editing => match key.code { InputMode::Editing if key.kind == KeyEventKind::Press => match key.code {
KeyCode::Enter => { KeyCode::Enter => {
app.messages.push(app.input.drain(..).collect()); app.messages.push(app.input.drain(..).collect());
} }
@ -108,6 +108,7 @@ fn run_app<B: Backend>(terminal: &mut Terminal<B>, mut app: App) -> io::Result<(
} }
_ => {} _ => {}
}, },
_ => {}
} }
} }
} }

Loading…
Cancel
Save