aboutsummaryrefslogtreecommitdiff
path: root/bundle/src/main.js
diff options
context:
space:
mode:
author_ov4 <ov4@ov4.org>2026-10-22 02:02:27 +0000
committer_ov4 <ov4@ov4.org>2026-10-22 02:02:27 +0000
commit9efee50d405b8ca990d30114fb6ec6a57e2e92f1 (patch)
tree3b29a1fb9e27b0a1e778f75555b05e9980f5b2a4 /bundle/src/main.js
parent660d618f8b0df318d636cd780e547890d0248c0c (diff)
feat(bundle): open independent native windows with CtrlCmd+Shift+N
macOS only activates a running app, so a second document needs another window in the same process. Each window label gets its own Runner, which is stopped when its window is destroyed or the app exits, and the capability now covers every window. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'bundle/src/main.js')
-rw-r--r--bundle/src/main.js2
1 files changed, 2 insertions, 0 deletions
diff --git a/bundle/src/main.js b/bundle/src/main.js
index 991ef06..4d06998 100644
--- a/bundle/src/main.js
+++ b/bundle/src/main.js
@@ -139,6 +139,8 @@ async function action(callback) {
// CtrlCmd is Cmd on macOS and Ctrl elsewhere, matching Monaco's own keybindings.
const shortcuts = [
[KeyMod.CtrlCmd | KeyCode.KeyN, () => action(newFile)],
+ // Each window is an independent native OS window, even while this one runs.
+ [KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.KeyN, () => invoke('new_window').catch(report)],
[KeyMod.CtrlCmd | KeyCode.KeyO, () => action(openFile)],
[KeyMod.CtrlCmd | KeyCode.KeyS, () => action(saveFile)],
[KeyMod.CtrlCmd | KeyCode.KeyF, () => { editor.focus(); editor.getAction('actions.find').run(); }]