Fix macOS tab jump shortcut conflict (#859)
This commit is contained in:
@@ -33,6 +33,7 @@
|
|||||||
- iOS project picker now submits the typed path. ([#831](https://github.com/getpaseo/paseo/pull/831))
|
- iOS project picker now submits the typed path. ([#831](https://github.com/getpaseo/paseo/pull/831))
|
||||||
- System messages and chat mentions routed to multiple agents now reach every recipient consistently. ([#830](https://github.com/getpaseo/paseo/pull/830))
|
- System messages and chat mentions routed to multiple agents now reach every recipient consistently. ([#830](https://github.com/getpaseo/paseo/pull/830))
|
||||||
- Clicking a Markdown link in agent output no longer reloads the desktop app on top of opening the link.
|
- Clicking a Markdown link in agent output no longer reloads the desktop app on top of opening the link.
|
||||||
|
- macOS desktop tab-jump shortcuts now use Cmd+Option+1-9, avoiding conflicts with Option-based international keyboard characters such as `@`.
|
||||||
|
|
||||||
### Security
|
### Security
|
||||||
|
|
||||||
|
|||||||
@@ -148,9 +148,16 @@ describe("keyboard-shortcuts", () => {
|
|||||||
payload: { index: 2 },
|
payload: { index: 2 },
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "matches tab index jump on desktop via Alt+digit",
|
name: "matches tab index jump on mac desktop via Cmd+Alt+digit",
|
||||||
|
event: { key: "@", code: "Digit2", metaKey: true, altKey: true },
|
||||||
|
context: { isMac: true, isDesktop: true },
|
||||||
|
action: "workspace.tab.navigate.index",
|
||||||
|
payload: { index: 2 },
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: "matches tab index jump on non-mac desktop via Alt+digit",
|
||||||
event: { key: "2", code: "Digit2", altKey: true },
|
event: { key: "2", code: "Digit2", altKey: true },
|
||||||
context: { isDesktop: true },
|
context: { isMac: false, isDesktop: true },
|
||||||
action: "workspace.tab.navigate.index",
|
action: "workspace.tab.navigate.index",
|
||||||
payload: { index: 2 },
|
payload: { index: 2 },
|
||||||
},
|
},
|
||||||
@@ -333,6 +340,11 @@ describe("keyboard-shortcuts", () => {
|
|||||||
event: { key: "t", code: "KeyT", ctrlKey: true },
|
event: { key: "t", code: "KeyT", ctrlKey: true },
|
||||||
context: { isMac: true },
|
context: { isMac: true },
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: "keeps mac Option+digit available for international text input",
|
||||||
|
event: { key: "@", code: "Digit2", altKey: true },
|
||||||
|
context: { isMac: true, isDesktop: true, focusScope: "message-input" },
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "does not match Ctrl+K for command center on non-mac in terminal",
|
name: "does not match Ctrl+K for command center on non-mac in terminal",
|
||||||
event: { key: "k", code: "KeyK", ctrlKey: true },
|
event: { key: "k", code: "KeyK", ctrlKey: true },
|
||||||
@@ -477,16 +489,17 @@ describe("keyboard-shortcut help sections", () => {
|
|||||||
"new-agent": ["mod", "shift", "O"],
|
"new-agent": ["mod", "shift", "O"],
|
||||||
"workspace-tab-new": ["mod", "T"],
|
"workspace-tab-new": ["mod", "T"],
|
||||||
"workspace-jump-index": ["mod", "1-9"],
|
"workspace-jump-index": ["mod", "1-9"],
|
||||||
"workspace-tab-jump-index": ["alt", "1-9"],
|
"workspace-tab-jump-index": ["mod", "alt", "1-9"],
|
||||||
"workspace-tab-close-current": ["meta", "W"],
|
"workspace-tab-close-current": ["meta", "W"],
|
||||||
"workspace-pane-split-right": ["mod", "\\"],
|
"workspace-pane-split-right": ["mod", "\\"],
|
||||||
"workspace-pane-close": ["mod", "shift", "W"],
|
"workspace-pane-close": ["mod", "shift", "W"],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "shows Ctrl+W close tab for non-mac desktop",
|
name: "uses non-mac desktop defaults for tab jump and close tab",
|
||||||
context: { isMac: false, isDesktop: true },
|
context: { isMac: false, isDesktop: true },
|
||||||
expectedKeys: {
|
expectedKeys: {
|
||||||
|
"workspace-tab-jump-index": ["alt", "1-9"],
|
||||||
"workspace-tab-close-current": ["ctrl", "W"],
|
"workspace-tab-close-current": ["ctrl", "W"],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -292,11 +292,24 @@ const SHORTCUT_BINDINGS: readonly ShortcutBinding[] = [
|
|||||||
},
|
},
|
||||||
|
|
||||||
// --- Tab index jump ---
|
// --- Tab index jump ---
|
||||||
|
{
|
||||||
|
id: "workspace-tab-navigate-index-cmd-alt-digit-mac-desktop",
|
||||||
|
action: "workspace.tab.navigate.index",
|
||||||
|
combo: "Cmd+Alt+Digit",
|
||||||
|
when: { mac: true, desktop: true, commandCenter: false },
|
||||||
|
payload: { type: "index" },
|
||||||
|
help: {
|
||||||
|
id: "workspace-tab-jump-index",
|
||||||
|
section: "navigation",
|
||||||
|
label: "Jump to tab",
|
||||||
|
keys: ["mod", "alt", "1-9"],
|
||||||
|
},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
id: "workspace-tab-navigate-index-alt-digit-desktop",
|
id: "workspace-tab-navigate-index-alt-digit-desktop",
|
||||||
action: "workspace.tab.navigate.index",
|
action: "workspace.tab.navigate.index",
|
||||||
combo: "Alt+Digit",
|
combo: "Alt+Digit",
|
||||||
when: { desktop: true, commandCenter: false },
|
when: { mac: false, desktop: true, commandCenter: false },
|
||||||
payload: { type: "index" },
|
payload: { type: "index" },
|
||||||
help: {
|
help: {
|
||||||
id: "workspace-tab-jump-index",
|
id: "workspace-tab-jump-index",
|
||||||
|
|||||||
Reference in New Issue
Block a user