diff --git a/ghost/admin/app/components/modal-base.js b/ghost/admin/app/components/modal-base.js index aac8dbaafc..fd579b10a2 100644 --- a/ghost/admin/app/components/modal-base.js +++ b/ghost/admin/app/components/modal-base.js @@ -7,6 +7,7 @@ export default Component.extend({ classNames: 'modal-content', _previousKeymasterScope: null, + closeOnEnter: true, // Allowed Actions closeModal: () => {}, @@ -38,9 +39,11 @@ export default Component.extend({ this._previousKeymasterScope = key.getScope(); - key('enter', 'modal', () => { - this.send('confirm'); - }); + if (this.closeOnEnter) { + key('enter', 'modal', () => { + this.send('confirm'); + }); + } key('escape', 'modal', (event) => { if (!event.target.dataset.preventEscapeCloseModal) { diff --git a/ghost/admin/app/components/modal-portal-settings.js b/ghost/admin/app/components/modal-portal-settings.js index 7f0cbc5428..f11a76d0e9 100644 --- a/ghost/admin/app/components/modal-portal-settings.js +++ b/ghost/admin/app/components/modal-portal-settings.js @@ -28,6 +28,7 @@ export default ModalComponent.extend({ changedTiers: null, openSection: null, portalPreviewGuid: 'modal-portal-settings', + closeOnEnter: false, confirm() {}, diff --git a/ghost/admin/lib/koenig-editor/addon/components/koenig-basic-html-input.js b/ghost/admin/lib/koenig-editor/addon/components/koenig-basic-html-input.js index eb4df02a59..e84080f2fb 100644 --- a/ghost/admin/lib/koenig-editor/addon/components/koenig-basic-html-input.js +++ b/ghost/admin/lib/koenig-editor/addon/components/koenig-basic-html-input.js @@ -315,10 +315,6 @@ export default class KoenigBasicHtmlInput extends Component { return; } - if (!range.isCollapsed) { - editor.performDelete(); - } - if (editor.post.isBlank) { editor._insertEmptyMarkupSectionAtCursor(); } @@ -337,6 +333,10 @@ export default class KoenigBasicHtmlInput extends Component { } } + if (!range.isCollapsed) { + editor.performDelete(); + } + const position = editor.range.head; const targetFormat = event.shiftKey ? 'text' : 'html'; const pastedPost = parsePostFromPaste(event, editor, {targetFormat});