From: Dan Brown Date: Thu, 7 Dec 2017 18:44:20 +0000 (+0000) Subject: Added meta+enter shortcut for page save X-Git-Tag: v0.19.0~1^2~12 X-Git-Url: http://source.bookstackapp.com/bookstack/commitdiff_plain/02fd1c48ed9575ef242927018be65c0cf28c5fc0?ds=inline Added meta+enter shortcut for page save Closes #604 --- diff --git a/resources/assets/js/components/markdown-editor.js b/resources/assets/js/components/markdown-editor.js index e646dfd2b..7b051dd12 100644 --- a/resources/assets/js/components/markdown-editor.js +++ b/resources/assets/js/components/markdown-editor.js @@ -84,6 +84,8 @@ class MarkdownEditor { }; // Save draft extraKeys[`${metaKey}-S`] = cm => {window.$events.emit('editor-save-draft')}; + // Save page + extraKeys[`${metaKey}-Enter`] = cm => {window.$events.emit('editor-save-page')}; // Show link selector extraKeys[`Shift-${metaKey}-K`] = cm => {this.actionShowLinkSelector()}; // Insert Link diff --git a/resources/assets/js/pages/page-form.js b/resources/assets/js/pages/page-form.js index ec433b316..73a6c976d 100644 --- a/resources/assets/js/pages/page-form.js +++ b/resources/assets/js/pages/page-form.js @@ -71,6 +71,11 @@ function registerEditorShortcuts(editor) { window.$events.emit('editor-save-draft'); }); + // Save page shortcut + editor.shortcuts.add('meta+13', '', () => { + window.$events.emit('editor-save-page'); + }); + // Loop through callout styles editor.shortcuts.add('meta+9', '', function() { let selectedNode = editor.selection.getNode(); diff --git a/resources/assets/js/vues/page-editor.js b/resources/assets/js/vues/page-editor.js index 9d7179a7e..d33739b30 100644 --- a/resources/assets/js/vues/page-editor.js +++ b/resources/assets/js/vues/page-editor.js @@ -34,8 +34,9 @@ function mounted() { this.draftText = trans('entities.pages_editing_page'); } - // Listen to save draft events from editor + // Listen to save events from editor window.$events.listen('editor-save-draft', this.saveDraft); + window.$events.listen('editor-save-page', this.savePage); // Listen to content changes from the editor window.$events.listen('editor-html-change', html => { @@ -106,6 +107,9 @@ let methods = { }); }, + savePage() { + this.$el.closest('form').submit(); + }, draftNotifyChange(text) { this.draftText = text;