From 11af62c94e43fee02f4b1d4c8f44db2176104db9 Mon Sep 17 00:00:00 2001 From: "Michael Y. Qiu" Date: Mon, 16 Mar 2026 16:10:13 +0800 Subject: [PATCH] fix: Keyboard shortcut assignment issue caused by modifier, b=closes https://github.com/zen-browser/desktop/issues/10686, p=#12776 --- .../components/preferences/zen-settings.js | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/browser/components/preferences/zen-settings.js b/src/browser/components/preferences/zen-settings.js index 839d1492f..4541bf90a 100644 --- a/src/browser/components/preferences/zen-settings.js +++ b/src/browser/components/preferences/zen-settings.js @@ -1020,8 +1020,24 @@ var gZenCKSSettings = { let shortcut; if (event.code && event.code.startsWith("Key")) { shortcut = event.code.slice(3); + } else if (event.code && event.code.startsWith("Digit")) { + shortcut = event.code.slice(5); } else { - shortcut = event.key; + // Use physical key mapping for common symbols + const CODE_TO_KEY_MAP = { + Comma: ",", + Period: ".", + Slash: "/", + Semicolon: ";", + Quote: "'", + BracketLeft: "[", + BracketRight: "]", + Backslash: "\\", + Backquote: "`", + Minus: "-", + Equal: "=", + }; + shortcut = CODE_TO_KEY_MAP[event.code] || event.key; } shortcut = shortcut.replace(/Ctrl|Control|Shift|Alt|Option|Cmd|Meta/, ""); // Remove all modifiers