Elastic: Fix regression in the new editor widget (#7021)

pull/5989/merge
Aleksander Machniak 5 years ago
parent a80d73602f
commit c2bd60f1aa

@ -4938,21 +4938,19 @@ function rcube_webmail()
this.toggle_editor = function(props, obj, e) this.toggle_editor = function(props, obj, e)
{ {
// @todo: this should work also with many editors on page // @todo: this should work also with many editors on page
var result = this.editor.toggle(props.html, props.noconvert || false); var result = this.editor.toggle(props.html, props.noconvert || false),
control = $('#' + this.editor.id).data('control') || $(e ? e.target : []);
// satisfy the expectations of aftertoggle-editor event subscribers // satisfy the expectations of aftertoggle-editor event subscribers
props.mode = props.html ? 'html' : 'plain'; props.mode = props.html && result ? 'html' : 'plain';
if (!result && e) { // update internal format flag
// fix selector value if operation failed $("[name='_is_html']").val(props.mode == 'html' ? 1 : 0);
props.mode = props.html ? 'plain' : 'html';
$(e.target).filter('select').val(props.mode);
}
if (result) { if (control.is('[type=checkbox]'))
// update internal format flag control.prop('checked', props.mode == 'html');
$("[name='_is_html']").val(props.html ? 1 : 0); else
} control.val(props.mode);
return result; return result;
}; };

@ -3655,7 +3655,7 @@ function rcube_elastic_ui()
parent.addClass('html-editor'); parent.addClass('html-editor');
editor.after(toolbar) editor.after(toolbar).data('control', sw)
.on('keydown', function(e) { .on('keydown', function(e) {
// ALT + F10 is the way to access toolbar in TinyMCE, let's do the same for plain editor // ALT + F10 is the way to access toolbar in TinyMCE, let's do the same for plain editor
if (e.altKey && e.which == 121) { if (e.altKey && e.which == 121) {

Loading…
Cancel
Save