Files
tty7/src
l0ng-ai a3b9461e4b feat(ui): make opening a new window a bindable action (#710)
Opening a window was reachable one way only: the switcher, with the
platform modifier held or through its row menu. Both land in
`windows::open`, neither is an action, so the thing could not be
keybound, palette-searched, or put on the Keybindings page.

`NewWindow` calls `windows::open(cx, None)` — a window on a workspace of
its own. The other reading, a second window on the current workspace, is
not a thing the app can hold: `WindowRegistry` is keyed by workspace, and
`windows::open` answers a workspace that already has a window by
activating it, so asking for the current one would raise the window you
are already in.

macOS takes Cmd+N, which is free and is what New Window means there. Off
macOS it ships unbound on purpose: Ctrl+N is a control code the shell is
owed, and Ctrl+Shift+N — where the control-code rule says window actions
belong — has been NewWorkspace for far longer than this action has
existed. The palette and the Keybindings page carry it either way.
2026-09-07 18:34:46 +08:00
..