From 56017022c49b70a531b7169ea29860cbea525a1f Mon Sep 17 00:00:00 2001 From: Sergei Shulepov Date: Tue, 7 Jan 2025 18:25:33 +0100 Subject: [PATCH] project_panel: Support multiple items in `RemoveFromProject` (#22455) This makes the `RemoveFromProject` action to remove all marked entries in the project panel instead of just the selected one. Closes #22454 Release Notes: - Improved the `RemoveFromProject` action to remove all selected items. --- crates/project_panel/src/project_panel.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/project_panel/src/project_panel.rs b/crates/project_panel/src/project_panel.rs index 058276b0bf..886ac95379 100644 --- a/crates/project_panel/src/project_panel.rs +++ b/crates/project_panel/src/project_panel.rs @@ -1995,8 +1995,8 @@ impl ProjectPanel { } fn remove_from_project(&mut self, _: &RemoveFromProject, cx: &mut ViewContext) { - if let Some((worktree, _)) = self.selected_sub_entry(cx) { - let worktree_id = worktree.read(cx).id(); + for entry in self.effective_entries().iter() { + let worktree_id = entry.worktree_id; self.project .update(cx, |project, cx| project.remove_worktree(worktree_id, cx)); }