diff --git a/packages/shared/src/us-keyboard-layout.ts b/packages/shared/src/us-keyboard-layout.ts index 199eb163..397c1870 100644 --- a/packages/shared/src/us-keyboard-layout.ts +++ b/packages/shared/src/us-keyboard-layout.ts @@ -712,15 +712,12 @@ const keyMap: Record = { }; export function transformHotkeyInput(keyInput: string): string[] { + // page down + if (keyMap[keyInput.toLowerCase()]) { + return [getKeyDefinition(keyMap[keyInput.toLowerCase()])]; + } + return keyInput.split(' ').map((key) => { - let newKey = key; - if (keyMap[key.toLowerCase()]) { - newKey = keyMap[key.toLowerCase()]; - } - const keyDefinition = getKeyDefinition(newKey); - if (keyDefinition) { - return keyDefinition; - } - return newKey; + return getKeyDefinition(keyMap[key.toLowerCase()] || key); }); } diff --git a/packages/shared/tests/unit-test/keyboard.test.ts b/packages/shared/tests/unit-test/keyboard.test.ts index f5b4227b..b781b29b 100644 --- a/packages/shared/tests/unit-test/keyboard.test.ts +++ b/packages/shared/tests/unit-test/keyboard.test.ts @@ -59,4 +59,9 @@ describe('transformHotkeyInput', () => { it('should handle empty input', () => { expect(transformHotkeyInput('')).toEqual(['']); }); + + it('should handle page down', () => { + expect(transformHotkeyInput('page down')).toEqual(['PageDown']); + expect(transformHotkeyInput('page up')).toEqual(['PageUp']); + }); });