project panel: Make updates asynchronous (#38881)

Closes #ISSUE

Release Notes:

- project panel: Revamped how project panel entries are refreshed, which
should lead to a significantly smoother experience when working in large
projects.

---------

Co-authored-by: Smit Barmase <heysmitbarmase@gmail.com>
This commit is contained in:
Piotr Osiewicz
2025-10-02 11:40:09 +05:30
committed by GitHub
co-authored by Smit Barmase
parent b5d57598b6
commit a49b2d5bf8
10 changed files with 97395 additions and 609 deletions
-11
View File
@@ -5537,17 +5537,6 @@ impl Completion {
}
}
pub fn sort_worktree_entries(entries: &mut [impl AsRef<Entry>]) {
entries.sort_by(|entry_a, entry_b| {
let entry_a = entry_a.as_ref();
let entry_b = entry_b.as_ref();
compare_paths(
(entry_a.path.as_std_path(), entry_a.is_file()),
(entry_b.path.as_std_path(), entry_b.is_file()),
)
});
}
fn proto_to_prompt(level: proto::language_server_prompt_request::Level) -> gpui::PromptLevel {
match level {
proto::language_server_prompt_request::Level::Info(_) => gpui::PromptLevel::Info,