diff --git a/CHANGELOG b/CHANGELOG index f7a8675d8..88adfe61c 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,8 @@ CHANGELOG Roundcube Webmail =========================== +- Elastic: Fix bug where it was possible to switch editor mode when 'htmleditor' was in 'dont_override' (#7143) + RELEASE 1.4.2 ------------- - Add support for PHPUnit 6 and 7 (#6870) diff --git a/skins/elastic/styles/widgets/editor.less b/skins/elastic/styles/widgets/editor.less index d2f536b86..5e602c13f 100644 --- a/skins/elastic/styles/widgets/editor.less +++ b/skins/elastic/styles/widgets/editor.less @@ -27,6 +27,11 @@ .mce-panel { border-color: @color-input-border; } + + &.focused { + border-color: @color-input-border-focus !important; + box-shadow: 0 0 0 .2rem @color-input-border-focus-shadow !important; + } } .mce-top-part::before, @@ -904,11 +909,6 @@ html.touch .mce-grid td { #composebody_ifr { min-height: 30em; } - - & > .mce-tinymce.focused { - border-color: @color-input-border-focus; - box-shadow: 0 0 0 .2rem @color-input-border-focus-shadow !important; - } } diff --git a/skins/elastic/templates/compose.html b/skins/elastic/templates/compose.html index 34f0f9983..2accc102c 100644 --- a/skins/elastic/templates/compose.html +++ b/skins/elastic/templates/compose.html @@ -60,14 +60,6 @@ - - - @@ -215,6 +207,9 @@
+ +
diff --git a/skins/elastic/ui.js b/skins/elastic/ui.js index a82e3079a..d4553c181 100644 --- a/skins/elastic/ui.js +++ b/skins/elastic/ui.js @@ -235,7 +235,7 @@ function rcube_elastic_ui() // Image upload widget $('.image-upload').each(function() { image_upload_input(this); }); - // Add HTML/Plain tabs (switch) on top of textarea with TinyMCE editor + // Add HTML/Plain switcher on top of textarea with TinyMCE editor $('textarea[data-html-editor]').each(function() { html_editor_init(this); }); $('#dragmessage-menu,#dragcontact-menu').each(function() { @@ -1351,7 +1351,7 @@ function rcube_elastic_ui() function tinymce_init(o) { var onload = [], - is_editor = $('#' + o.id).is('[data-html-editor]'); + is_editor = $('#' + o.id).parent().is('.html-editor'); // Enable autoresize plugin o.config.plugins += ' autoresize'; @@ -3655,7 +3655,7 @@ function rcube_elastic_ui() function html_editor_init(obj) { // Here we support two structures - // 1.
// @@ -3682,9 +3682,12 @@ function rcube_elastic_ui() is_table = true; } else { - sw = $('[name="editorSelector"]', obj.form); + sw = editor.next('select.hidden'); } + // make the textarea autoresizeable + textarea_autoresize_init(editor); + // sanity check if (sw.length != 1) { return; @@ -3707,9 +3710,6 @@ function rcube_elastic_ui() // Modify the textarea cell to use 100% width parent.addClass('col-sm-12'); } - - // make the textarea autoresizeable - textarea_autoresize_init(editor); }; /**