recent_projects: Perform fuzzy search on compacted paths.
Match highlighting for recent projects picker was off, because the path representation was compacted - for a path '/Users/hiro/Projects/zed' we compact it to use a tilde instead of home directory. However, the highlight positions were always calculated for a full path, leading to a mismatch in highlights. This commit addresses this by running fuzzy search on compacted paths instead of using long paths. This might lead to a slight performance hit, but given that recent projects modal shouldn't have that many items in the first place, it should be okay. Z-2546
This commit is contained in:
parent
6739c31594
commit
f164eb5289
1 changed files with 4 additions and 1 deletions
|
@ -134,7 +134,10 @@ impl PickerDelegate for RecentProjectsDelegate {
|
||||||
let combined_string = location
|
let combined_string = location
|
||||||
.paths()
|
.paths()
|
||||||
.iter()
|
.iter()
|
||||||
.map(|path| path.to_string_lossy().to_owned())
|
.map(|path| {
|
||||||
|
let compact = util::paths::compact(&path);
|
||||||
|
compact.to_string_lossy().into_owned()
|
||||||
|
})
|
||||||
.collect::<Vec<_>>()
|
.collect::<Vec<_>>()
|
||||||
.join("");
|
.join("");
|
||||||
StringMatchCandidate::new(id, combined_string)
|
StringMatchCandidate::new(id, combined_string)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue