diff options
| author | lukeflo | 2024-10-06 13:29:51 +0200 |
|---|---|---|
| committer | lukeflo | 2024-10-12 22:41:38 +0200 |
| commit | 7acb8e72a050402cbd53f74ae15e2fa6661c9fa6 (patch) | |
| tree | 84456c368cf7e6198eacb4c7efeef052c7da854c /src | |
| parent | 7369dace2c2584b0302b79eaf15f1945a9dc6e20 (diff) | |
| download | bibiman-7acb8e72a050402cbd53f74ae15e2fa6661c9fa6.tar.gz bibiman-7acb8e72a050402cbd53f74ae15e2fa6661c9fa6.zip | |
fix error in nested search, update vhs gif
Diffstat (limited to 'src')
| -rw-r--r-- | src/frontend/app.rs | 5 | ||||
| -rw-r--r-- | src/frontend/entries.rs | 2 | ||||
| -rw-r--r-- | src/frontend/keywords.rs | 3 |
3 files changed, 7 insertions, 3 deletions
diff --git a/src/frontend/app.rs b/src/frontend/app.rs index 00c1b45..0751da1 100644 --- a/src/frontend/app.rs +++ b/src/frontend/app.rs @@ -211,7 +211,10 @@ impl App { self.current_area = CurrentArea::TagArea; self.tag_list.tag_list_state.select(Some(0)) } - self.reset_current_list(); + // But keep filtering by tag if applied before entering search area + if !self.search_struct.inner_search { + self.reset_current_list(); + } self.former_area = None; // If search is canceled, reset default status of struct self.search_struct.search_string.clear(); diff --git a/src/frontend/entries.rs b/src/frontend/entries.rs index 46adcff..c532bf0 100644 --- a/src/frontend/entries.rs +++ b/src/frontend/entries.rs @@ -195,7 +195,7 @@ impl App { let filtered_list = BibiSearch::search_entry_list(&mut self.search_struct.search_string, orig_list.clone()); //search::search_entry_list(&self.search_string, orig_list.clone()); - self.search_struct.filtered_entry_list = filtered_list.clone(); + // self.search_struct.filtered_entry_list = filtered_list.clone(); self.entry_table = EntryTable::from_iter(filtered_list) } } diff --git a/src/frontend/keywords.rs b/src/frontend/keywords.rs index 311366a..4beec14 100644 --- a/src/frontend/keywords.rs +++ b/src/frontend/keywords.rs @@ -90,7 +90,8 @@ impl App { pub fn filter_tags_by_entries(&mut self) { if !self.search_struct.filtered_entry_list.is_empty() { - let orig_list = &self.search_struct.filtered_entry_list; + self.search_struct.filtered_tag_list.clear(); + let orig_list = self.search_struct.filtered_entry_list.clone(); let mut filtered_keywords: Vec<String> = Vec::new(); for e in orig_list { |
