Cleanup shortcuts scope handling

This commit is contained in:
the-djmaze 2022-03-07 13:47:03 +01:00
parent 874f2592ca
commit 60987f4623
5 changed files with 16 additions and 22 deletions

View file

@ -1,7 +1,6 @@
import ko from 'ko';
import { Scope } from 'Common/Enums';
let keyScopeFake = Scope.All;
let keyScopeFake = 'all';
export const
ScopeMenu = 'Menu',
@ -43,21 +42,20 @@ export const
addEventsListeners = (element, events) =>
Object.entries(events).forEach(([event, fn]) => element.addEventListener(event, fn)),
// keys
keyScopeReal = ko.observable(Scope.All),
// keys / shortcuts
keyScopeReal = ko.observable('all'),
keyScope = value => {
if (value) {
if (ScopeMenu !== value) {
keyScopeFake = value;
if (dropdownVisibility()) {
value = ScopeMenu;
}
}
keyScopeReal(value);
shortcuts.setScope(value);
} else {
if (!value) {
return keyScopeFake;
}
if (ScopeMenu !== value) {
keyScopeFake = value;
if (dropdownVisibility()) {
value = ScopeMenu;
}
}
keyScopeReal(value);
shortcuts.setScope(value);
};
dropdownVisibility.subscribe(value => {