microsoft / microsoft/vscode

macOS: show recent workspaces (incl. remote-SSH) in the dock menu, for parity with Windows JumpList

Open
#324,487 0 comments 0 reactions 1 assignee Claimed by @deepak1556 View on GitHub
Dominant language
TypeScript
Stars
193k
Forks
42.4k
PR merge metrics
PR metrics pending

Description

### Context

Right-clicking the VSCode dock icon on macOS shows only a single "New Window" entry plus the macOS-generated "Recent Documents" list. Remote-SSH (and other remote — WSL, Dev Containers, Codespaces, Tunnels) workspaces never appear in either.

### Problem

Two code paths keep remote workspaces out of the macOS dock:

- **macOS recent documents** — `updateMacOSRecentDocuments()` in `src/vs/platform/workspaces/electron-main/workspacesHistoryMainService.ts` filters to `file://` only (`if (loc.scheme === Schemas.file)`, ~L470), so `vscode-remote://ssh-remote+...` entries are dropped before reaching `app.addRecentDocument`. This is also a macOS API constraint — `NSDocumentController` only retains local file URLs here, so the filter is correct and should stay.
- **App dock menu** — `src/vs/platform/menubar/electron-main/menubar.ts` (~L294-297) hardcodes the dock menu to a single "New Window" item.

On Windows there is no such gap: `updateWindowsJumpList()` (~L377, same file) iterates `getRecentlyOpened().workspaces` with no scheme filter and emits `--folder-uri "vscode-remote://..."` entries, so remote hosts are one click away in the taskbar JumpList.

### Suggestion

Populate the macOS dock menu (`app.dock.setMenu`) with recent workspaces — including remote — to match the Windows JumpList. Clicking a remote entry would open the window with the remote folder URI, the same way the in-app "Open Recent" list and the Command Palette already handle remote entries today.

The in-app paths (Remote Explorer, `Remote-SSH: Connect to Host...`, `~/.ssh/config`) all work, but none are reachable from the dock — which is the whole point of the parity gap with Windows.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.