From 0f32145ecb8e7f9f0305d6a2d7d00c6e1603fd4b Mon Sep 17 00:00:00 2001 From: Vladas Zakrevskis <146100@gmail.com> Date: Thu, 30 May 2024 21:30:34 +0100 Subject: [PATCH] Skip current project in recent projects (#12502) Discussion: https://github.com/zed-industries/zed/discussions/12497 Release Notes: - Removed current project from the recent projects modals --- crates/recent_projects/src/recent_projects.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/crates/recent_projects/src/recent_projects.rs b/crates/recent_projects/src/recent_projects.rs index 9c1ce8b477510e51661ac5d1b4c0bd3cde439979..6aa88ce93f269f122b75b396c78365cd691ae959 100644 --- a/crates/recent_projects/src/recent_projects.rs +++ b/crates/recent_projects/src/recent_projects.rs @@ -228,6 +228,7 @@ impl PickerDelegate for RecentProjectsDelegate { let candidates = self .workspaces .iter() + .filter(|(id, _)| !self.is_current_workspace(*id, cx)) .enumerate() .map(|(id, (_, location))| { let combined_string = match location { @@ -393,8 +394,7 @@ impl PickerDelegate for RecentProjectsDelegate { return None; }; - let (workspace_id, location) = &self.workspaces[hit.candidate_id]; - let is_current_workspace = self.is_current_workspace(*workspace_id, cx); + let (_, location) = self.workspaces.get(hit.candidate_id)?; let is_remote = matches!(location, SerializedWorkspaceLocation::DevServer(_)); let dev_server_status = @@ -487,7 +487,7 @@ impl PickerDelegate for RecentProjectsDelegate { highlighted.render(cx) }), ) - .when(!is_current_workspace, |el| { + .map(|el| { let delete_button = div() .child( IconButton::new("delete", IconName::Close)