From 206a7d88a5f40763695d28648597d29d3347d1f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Andersson?= Date: Sat, 16 Jan 2021 22:50:12 +0100 Subject: [PATCH] Return to search when viewing search results --- src/ui/layout.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/ui/layout.rs b/src/ui/layout.rs index 1d8e3c1..762091c 100644 --- a/src/ui/layout.rs +++ b/src/ui/layout.rs @@ -318,6 +318,15 @@ impl ViewExt for Layout { fn on_command(&mut self, s: &mut Cursive, cmd: &Command) -> Result { match cmd { Command::Focus(view) => { + // Clear search results and return to search bar + // If trying to focus search screen while already on it + let search_view_name = "search"; + if view == search_view_name && self.focus == Some(search_view_name.into()) { + if let Some(stack) = self.stack.get_mut(search_view_name) { + stack.clear(); + } + } + if self.screens.keys().any(|k| k == view) { self.set_screen(view.clone()); let screen = self.screens.get_mut(view).unwrap();