From 9255c86797c8220e4c5c3563e0606725b096e7c2 Mon Sep 17 00:00:00 2001 From: Ferran Basora Date: Sat, 28 Nov 2020 16:22:21 +0000 Subject: [PATCH] Fix multi selection --- src/view.rs | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/src/view.rs b/src/view.rs index ee6666f..2e01246 100644 --- a/src/view.rs +++ b/src/view.rs @@ -182,16 +182,6 @@ impl<'a> View<'a> { break; } } - Key::Insert => match self.matches.iter().enumerate().find(|&h| h.0 == self.skip) { - Some(hm) => { - chosen.push((hm.1.text.to_string(), false)); - - if !self.multi { - return CaptureEvent::Hint(chosen); - } - } - _ => panic!("Match not found?"), - }, Key::Up => { self.prev(); } @@ -205,6 +195,19 @@ impl<'a> View<'a> { self.next(); } Key::Char(ch) => { + if ch == '\n' { + match self.matches.iter().enumerate().find(|&h| h.0 == self.skip) { + Some(hm) => { + chosen.push((hm.1.text.to_string(), false)); + + if !self.multi { + return CaptureEvent::Hint(chosen); + } + } + _ => panic!("Match not found?"), + } + } + if ch == ' ' && self.multi { return CaptureEvent::Hint(chosen); }