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

@ -6,8 +6,6 @@ export const
* @enum {string}
*/
Scope = {
All: 'all',
None: 'none',
MessageList: 'MessageList',
FolderList: 'FolderList',
MessageView: 'MessageView',

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,10 +42,12 @@ 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 (!value) {
return keyScopeFake;
}
if (ScopeMenu !== value) {
keyScopeFake = value;
if (dropdownVisibility()) {
@ -55,9 +56,6 @@ export const
}
keyScopeReal(value);
shortcuts.setScope(value);
} else {
return keyScopeFake;
}
};
dropdownVisibility.subscribe(value => {

View file

@ -1,7 +1,6 @@
import ko from 'ko';
import { addObservablesTo, addComputablesTo, addSubscribablesTo } from 'External/ko';
import { Scope } from 'Common/Enums';
import { keyScope, SettingsGet, leftPanelDisabled } from 'Common/Globals';
import { ViewType, showScreenPopup } from 'Knoin/Knoin';
@ -16,8 +15,8 @@ class AbstractView {
this.viewModelDom = null;
this.keyScope = {
scope: Scope.None,
previous: Scope.None,
scope: 'none',
previous: 'none',
set: function() {
this.previous = keyScope();
keyScope(this.scope);

View file

@ -51,7 +51,7 @@ export class MailBoxUserScreen extends AbstractScreen {
onShow() {
this.updateWindowTitle();
AppUserStore.focusedState(Scope.None);
AppUserStore.focusedState('none');
AppUserStore.focusedState(Scope.MessageList);
ThemeStore.isMobile() && leftPanelDisabled(true);

View file

@ -1,6 +1,5 @@
import ko from 'ko';
import { Scope } from 'Common/Enums';
import { getNotification, i18n } from 'Common/Translator';
import { arrayLength } from 'Common/Utils';
@ -28,7 +27,7 @@ export class PluginPopupView extends AbstractViewPopup {
hasConfiguration: () => 0 < this.config().length
});
this.keyScope.scope = Scope.All;
this.keyScope.scope = 'all';
decorateKoCommands(this, {
saveCommand: self => self.hasConfiguration()