fix: paste into terminal after switching modes (#793)

* fix: paste into terminal after switching modes

* fix: remove collect and fix format
This commit is contained in:
Hamza Hamud 2023-03-20 18:08:29 +00:00 committed by GitHub
parent dcd77749dd
commit 26a1b93098
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -114,6 +114,7 @@ impl State {
match input {
Event::Key(k) => self.handle_key_input(settings, k, len),
Event::Mouse(m) => self.handle_mouse_input(*m, len),
Event::Paste(d) => self.handle_paste_input(d),
_ => None,
}
}
@ -133,6 +134,13 @@ impl State {
None
}
fn handle_paste_input(&mut self, input: &str) -> Option<usize> {
for i in input.chars() {
self.search.input.insert(i);
}
None
}
#[allow(clippy::too_many_lines)]
fn handle_key_input(
&mut self,
@ -451,7 +459,8 @@ impl Stdout {
execute!(
stdout,
terminal::EnterAlternateScreen,
event::EnableMouseCapture
event::EnableMouseCapture,
event::EnableBracketedPaste
)?;
Ok(Self { stdout })
}
@ -462,7 +471,8 @@ impl Drop for Stdout {
execute!(
self.stdout,
terminal::LeaveAlternateScreen,
event::DisableMouseCapture
event::DisableMouseCapture,
event::DisableBracketedPaste
)
.unwrap();
terminal::disable_raw_mode().unwrap();