diff --git a/src/public/javascripts/services/app_context.js b/src/public/javascripts/services/app_context.js index cbc5bc164..cde160265 100644 --- a/src/public/javascripts/services/app_context.js +++ b/src/public/javascripts/services/app_context.js @@ -42,14 +42,12 @@ class AppContext extends Component { this.triggerEvent(eventName); }); - this.children = [ - this.tabManager, - rootWidget, - new Entrypoints(this) - ]; + this.children = [ rootWidget ]; this.executors = [ - new DialogCommandExecutor(this) + this.tabManager, + new DialogCommandExecutor(this), + new Entrypoints(this) ]; if (utils.isElectron()) { @@ -67,9 +65,7 @@ class AppContext extends Component { async triggerCommand(name, data = {}) { for (const executor of this.executors) { - const fun = executor[name + 'Command']; - - const called = await this.callMethod(executor, fun, data); + const called = await executor.handleCommand(name, data); if (called) { return; diff --git a/src/public/javascripts/services/dialog_command_executor.js b/src/public/javascripts/services/dialog_command_executor.js index 06d718a9c..fffd0f682 100644 --- a/src/public/javascripts/services/dialog_command_executor.js +++ b/src/public/javascripts/services/dialog_command_executor.js @@ -51,4 +51,20 @@ export default class DialogCommandExecutor extends Component { const d = await import("../dialogs/move_to.js"); d.showDialog(branchIds); } + + showOptionsCommand() { + import("../dialogs/options.js").then(d => d.showDialog()) + } + + showHelpCommand() { + import("../dialogs/help.js").then(d => d.showDialog()) + } + + showSQLConsoleCommand() { + import("../dialogs/sql_console.js").then(d => d.showDialog()) + } + + showBackendLogCommand() { + import("../dialogs/backend_log.js").then(d => d.showDialog()) + } } \ No newline at end of file diff --git a/src/public/javascripts/services/entrypoints.js b/src/public/javascripts/services/entrypoints.js index c3d02c151..fceb738c8 100644 --- a/src/public/javascripts/services/entrypoints.js +++ b/src/public/javascripts/services/entrypoints.js @@ -8,8 +8,8 @@ import appContext from "./app_context.js"; import Component from "../widgets/component.js"; export default class Entrypoints extends Component { - constructor(appContext, parent) { - super(appContext, parent); + constructor(parent) { + super(parent); // hot keys are active also inside inputs and content editables jQuery.hotkeys.options.filterInputAcceptingElements = false; @@ -29,13 +29,13 @@ export default class Entrypoints extends Component { }); } - openDevToolsEvent() { + openDevToolsCommand() { if (utils.isElectron()) { require('electron').remote.getCurrentWindow().toggleDevTools(); } } - findInTextEvent() { + findInTextCommand() { if (!utils.isElectron()) { return; } @@ -56,9 +56,7 @@ export default class Entrypoints extends Component { }); } - - - async createNoteIntoDayNoteEvent() { + async createNoteIntoDayNoteCommand() { const todayNote = await dateNoteService.getTodayNote(); const {note} = await server.post(`notes/${todayNote.noteId}/children?target=into`, { @@ -74,10 +72,10 @@ export default class Entrypoints extends Component { appContext.tabManager.activateTab(tabContext.tabId); await tabContext.setNote(note.noteId); - appContext.triggerEvent('focusAndSelectTitle'); + appContext.triggerCommand('focusAndSelectTitle'); } - async toggleNoteHoistingEvent() { + async toggleNoteHoistingCommand() { const note = appContext.tabManager.getActiveTabNote(); const hoistedNoteId = hoistedNoteService.getHoistedNoteId(); @@ -93,11 +91,11 @@ export default class Entrypoints extends Component { } } - copyWithoutFormattingEvent() { + copyWithoutFormattingCommand() { utils.copySelectionToClipboard(); } - toggleFullscreenEvent() { + toggleFullscreenCommand() { if (utils.isElectron()) { const win = require('electron').remote.getCurrentWindow(); @@ -111,7 +109,7 @@ export default class Entrypoints extends Component { } } - toggleZenModeEvent() { + toggleZenModeCommand() { if (!this.zenModeActive) { $(".hide-in-zen-mode,.gutter").addClass("hidden-by-zen-mode"); $("#container").addClass("zen-mode"); @@ -125,11 +123,11 @@ export default class Entrypoints extends Component { } } - reloadFrontendAppEvent() { + reloadFrontendAppCommand() { utils.reloadApp(); } - logoutEvent() { + logoutCommand() { const $logoutForm = $('