diff --git a/assets/js/src/newsletter_editor/behaviors/TextEditorBehavior.js b/assets/js/src/newsletter_editor/behaviors/TextEditorBehavior.js index bbe15b939d..2af7a2457b 100644 --- a/assets/js/src/newsletter_editor/behaviors/TextEditorBehavior.js +++ b/assets/js/src/newsletter_editor/behaviors/TextEditorBehavior.js @@ -71,6 +71,9 @@ BL.TextEditorBehavior = Marionette.Behavior.extend({ }); editor.on('click', function onClick(e) { + if (App.getShowedSettingsId()) { + App.getChannel().trigger('hideSettings'); + } // if caret not in editor, place it there (triggers focus on editor) if (document.activeElement !== editor.targetElm) { editor.selection.placeCaretAt(e.clientX, e.clientY); diff --git a/assets/js/src/newsletter_editor/blocks/base.js b/assets/js/src/newsletter_editor/blocks/base.js index 352e405140..d3cec496b3 100644 --- a/assets/js/src/newsletter_editor/blocks/base.js +++ b/assets/js/src/newsletter_editor/blocks/base.js @@ -226,6 +226,14 @@ Module.BlockToolsView = AugmentedView.extend({ }, changeSettings: function changeSettings(options) { var ViewType = this.getSettingsView(); + var showedSettingsId = App.getShowedSettingsId(); + if (showedSettingsId) { + if (showedSettingsId === this.model.cid) { + return; + } + App.getChannel().trigger('hideSettings'); + return; + } App.getChannel().trigger('settingsShowed', this.model.cid); (new ViewType(_.extend({ model: this.model }, options || {}))).render(); },