diff --git a/crates/outline_panel/src/outline_panel.rs b/crates/outline_panel/src/outline_panel.rs index 73570dd5afc7758b6671e238a15cd6981517eb0a..da66ca40313d896f926128ecde49023dc9956016 100644 --- a/crates/outline_panel/src/outline_panel.rs +++ b/crates/outline_panel/src/outline_panel.rs @@ -3906,9 +3906,11 @@ impl Render for OutlinePanel { .on_action(cx.listener(Self::toggle_active_editor_pin)) .on_action(cx.listener(Self::unfold_directory)) .on_action(cx.listener(Self::fold_directory)) - .when(project.is_local_or_ssh(), |el| { + .when(project.is_local(), |el| { el.on_action(cx.listener(Self::reveal_in_finder)) - .on_action(cx.listener(Self::open_in_terminal)) + }) + .when(project.is_local_or_ssh(), |el| { + el.on_action(cx.listener(Self::open_in_terminal)) }) .on_mouse_down( MouseButton::Right, diff --git a/crates/project_panel/src/project_panel.rs b/crates/project_panel/src/project_panel.rs index cd4196dbc67b159fd85e5e2eedc6fa733e80392b..8e741134f0e446892d4468f332f39f544621c53e 100644 --- a/crates/project_panel/src/project_panel.rs +++ b/crates/project_panel/src/project_panel.rs @@ -484,6 +484,7 @@ impl ProjectPanel { let worktree_id = worktree.id(); let is_read_only = project.is_read_only(); let is_remote = project.is_via_collab() && project.dev_server_project_id().is_none(); + let is_local = project.is_local(); let context_menu = ContextMenu::build(cx, |menu, cx| { menu.context(self.focus_handle.clone()).map(|menu| { @@ -495,13 +496,15 @@ impl ProjectPanel { menu.action("New File", Box::new(NewFile)) .action("New Folder", Box::new(NewDirectory)) .separator() - .when(cfg!(target_os = "macos"), |menu| { + .when(is_local && cfg!(target_os = "macos"), |menu| { menu.action("Reveal in Finder", Box::new(RevealInFileManager)) }) - .when(cfg!(not(target_os = "macos")), |menu| { + .when(is_local && cfg!(not(target_os = "macos")), |menu| { menu.action("Reveal in File Manager", Box::new(RevealInFileManager)) }) - .action("Open in Default App", Box::new(OpenWithSystem)) + .when(is_local, |menu| { + menu.action("Open in Default App", Box::new(OpenWithSystem)) + }) .action("Open in Terminal", Box::new(OpenInTerminal)) .when(is_dir, |menu| { menu.separator()