summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/client/app/common/hotkey.ts13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/client/app/common/hotkey.ts b/src/client/app/common/hotkey.ts
index 03806fb184..e63fcc9f97 100644
--- a/src/client/app/common/hotkey.ts
+++ b/src/client/app/common/hotkey.ts
@@ -22,7 +22,10 @@ const getKeyMap = keymap => Object.entries(keymap).map(([patterns, callback]): a
result.patterns = patterns.split('|').map(part => {
const pattern = {
- which: []
+ which: [],
+ ctrl: false,
+ alt: false,
+ shift: false
} as pattern;
part.trim().split('+').forEach(key => {
@@ -66,10 +69,10 @@ export default {
if (el._hotkey_global && targetReservedKeys.includes(`'${key}'`)) break;
const matched = action.patterns.some(pattern => {
- let matched = pattern.which.includes(key);
- if (pattern.ctrl && !e.ctrlKey) matched = false;
- if (pattern.shift && !e.shiftKey) matched = false;
- if (pattern.alt && !e.altKey) matched = false;
+ const matched = pattern.which.includes(key) &&
+ pattern.ctrl == e.ctrlKey &&
+ pattern.shift == e.shiftKey &&
+ pattern.alt == e.altKey;
if (matched) {
e.preventDefault();