From 3525de1dd4162fa222a8aa6344b59cb4a2189185 Mon Sep 17 00:00:00 2001 From: EnixCoda Date: Sun, 10 Jun 2018 02:11:49 +0800 Subject: [PATCH] fix(keyHelper): handle control key & format in uppercase --- src/components/SettingsBar.js | 1 + src/utils/keyHelper.js | 13 +++++++------ 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/components/SettingsBar.js b/src/components/SettingsBar.js index 3d5127c..01986aa 100644 --- a/src/components/SettingsBar.js +++ b/src/components/SettingsBar.js @@ -33,6 +33,7 @@ function friendlyFormatShortcut(shortcut) { .replace(/ctrl/, '⌃') .replace(/shift/, '⇧') .replace(/alt/, '⌥') + .toUpperCase() } else { return shortcut } diff --git a/src/utils/keyHelper.js b/src/utils/keyHelper.js index 8d26bcb..89b4c29 100644 --- a/src/utils/keyHelper.js +++ b/src/utils/keyHelper.js @@ -3,7 +3,7 @@ const keyCodeArray = [ ...'`[]\\;\',./'.split(''), 'alt', 'shift', - 'control', + 'ctrl', 'meta', ] const validKeyCodes = new Set(keyCodeArray) @@ -33,11 +33,12 @@ function parse(keysString) { } function parseKeyCode(code) { - let c = code.toLowerCase() - c = c.replace(/(left|right)$/, '') - c = c.replace(/^digit/, '') - c = c.replace(/^key/, '') - return c + return code + .toLowerCase() + .replace(/(left|right)$/, '') + .replace(/^control$/, 'ctrl') + .replace(/^digit/, '') + .replace(/^key/, '') } function parseEvent(e) {