diff --git a/CHANGELOG b/CHANGELOG index 6e72efbd1..75242e983 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,6 +1,7 @@ CHANGELOG Roundcube Webmail =========================== +- Add option to enable HTML editor always, except when replying to plain text messages (#1489365) - Emoticons: Added option to switch on/off emoticons in compose editor (#1485732) - Emoticons: Added option to switch on/off emoticons in plain text messages - Emoticons: All emoticons-related functionality is handled by the plugin now diff --git a/config/defaults.inc.php b/config/defaults.inc.php index 39e541c1b..76469350d 100644 --- a/config/defaults.inc.php +++ b/config/defaults.inc.php @@ -1015,7 +1015,11 @@ $config['message_extwin'] = false; $config['compose_extwin'] = false; // compose html formatted messages by default -// 0 - never, 1 - always, 2 - on reply to HTML message, 3 - on forward or reply to HTML message +// 0 - never, +// 1 - always, +// 2 - on reply to HTML message, +// 3 - on forward or reply to HTML message +// 4 - always, except when replying to plain text message $config['htmleditor'] = 0; // save copies of compose messages in the browser's local storage diff --git a/program/localization/en_US/labels.inc b/program/localization/en_US/labels.inc index 8202b140d..e3f6fc8a8 100644 --- a/program/localization/en_US/labels.inc +++ b/program/localization/en_US/labels.inc @@ -474,6 +474,7 @@ $labels['deletejunk'] = 'Directly delete messages in Junk'; $labels['showremoteimages'] = 'Display remote inline images'; $labels['fromknownsenders'] = 'from known senders'; $labels['always'] = 'always'; +$labels['alwaysbutplain'] = 'always, except when replying to plain text'; $labels['showinlineimages'] = 'Display attached images below the message'; $labels['autosavedraft'] = 'Automatically save draft'; $labels['everynminutes'] = 'every $n minute(s)'; diff --git a/program/steps/mail/compose.inc b/program/steps/mail/compose.inc index 85e5e27d2..96db7e6cf 100644 --- a/program/steps/mail/compose.inc +++ b/program/steps/mail/compose.inc @@ -716,13 +716,14 @@ function rcmail_compose_editor_mode() $useHtml = rcmail_message_is_html(); } else if ($compose_mode == RCUBE_COMPOSE_REPLY) { - $useHtml = ($html_editor == 1 || ($html_editor >= 2 && rcmail_message_is_html())); + $useHtml = $html_editor == 1 || ($html_editor >= 2 && rcmail_message_is_html()); } else if ($compose_mode == RCUBE_COMPOSE_FORWARD) { - $useHtml = ($html_editor == 1 || ($html_editor == 3 && rcmail_message_is_html())); + $useHtml = $html_editor == 1 || $html_editor == 4 + || ($html_editor == 3 && rcmail_message_is_html()); } else { - $useHtml = ($html_editor == 1); + $useHtml = $html_editor == 1 || $html_editor == 4; } return $useHtml; diff --git a/program/steps/settings/func.inc b/program/steps/settings/func.inc index 02183250f..22c02ee21 100644 --- a/program/steps/settings/func.inc +++ b/program/steps/settings/func.inc @@ -672,9 +672,10 @@ function rcmail_user_prefs($current = null) $select = new html_select(array('name' => '_htmleditor', 'id' => $field_id)); $select->add($RCMAIL->gettext('never'), 0); - $select->add($RCMAIL->gettext('always'), 1); $select->add($RCMAIL->gettext('htmlonreply'), 2); $select->add($RCMAIL->gettext('htmlonreplyandforward'), 3); + $select->add($RCMAIL->gettext('always'), 1); + $select->add($RCMAIL->gettext('alwaysbutplain'), 4); $blocks['main']['options']['htmleditor'] = array( 'title' => html::label($field_id, rcube::Q($RCMAIL->gettext('htmleditor'))),