Merge 8b04e8a7ae976b9154d469ed00a54a1b82a92cdc into 232b45e6a66753cb9ef8cea6f6ea8dcc045434c1

This commit is contained in:
nyx 2025-02-13 16:44:26 -05:00 committed by GitHub
commit c4807c68a7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -86,16 +86,23 @@ impl Filter {
} }
fn update_completion_preview(&mut self) { fn update_completion_preview(&mut self) {
self.completion_preview = if self.items.is_empty() || self.search_input.is_empty() { if self.items.is_empty() || self.search_input.is_empty() {
None self.completion_preview = None;
} else { return;
let input = self.search_input.iter().collect::<String>().to_lowercase();
self.items.iter().find_map(|item| {
let item_name_lower = item.node.name.to_lowercase();
(item_name_lower.starts_with(&input))
.then_some(item_name_lower[input.len()..].to_string())
})
} }
let input = self.search_input.iter().collect::<String>().to_lowercase();
let completion = self
.items
.iter()
.find(|item| item.node.name.to_lowercase().starts_with(&input))
.and_then(|item| {
let name = item.node.name.to_lowercase();
(input.len() <= name.len()).then(|| name[input.len()..].to_string())
});
self.completion_preview = completion;
} }
pub fn draw_searchbar(&self, frame: &mut Frame, area: Rect, theme: &Theme) { pub fn draw_searchbar(&self, frame: &mut Frame, area: Rect, theme: &Theme) {