diff --git a/api/js/etemplate/et2_widget_htmlarea.ts b/api/js/etemplate/et2_widget_htmlarea.ts
index bc006c1665..5d0d6fb4f6 100644
--- a/api/js/etemplate/et2_widget_htmlarea.ts
+++ b/api/js/etemplate/et2_widget_htmlarea.ts
@@ -529,6 +529,27 @@ export class et2_htmlarea extends et2_editableWidget implements et2_IResizeable
return this.options.readonly ? this.value : this.htmlNode.val();
}
+ /**
+ * Apply default font and -size
+ */
+ applyDefaultFont()
+ {
+ const edit_area = this.editor.editorContainer.querySelector('iframe').contentDocument;
+ const font_family = egw.preference('rte_font', 'common') || 'arial, helvetica, sans-serif';
+ edit_area.querySelectorAll('h1:not([style*="font-family"]),h2:not([style*="font-family"]),h3:not([style*="font-family"]),h4:not([style*="font-family"]),h5:not([style*="font-family"]),h6:not([style*="font-family"]),' +
+ 'div:not([style*="font-family"]),li:not([style*="font-family"]),p:not([style*="font-family"]),blockquote:not([style*="font-family"]),' +
+ 'td:not([style*="font-family"]),th:not([style*="font-family"]').forEach((elem) =>
+ {
+ elem.style.fontFamily = font_family;
+ });
+ const font_size = (egw.preference('rte_font_size', 'common') || '10')+(egw.preference('rte_font_unit', 'common') || 'pt');
+ edit_area.querySelectorAll('div:not([style*="font-size"]),li:not([style*="font-size"]),p:not([style*="font-size"]),blockquote:not([style*="font-size"]),' +
+ 'td:not([style*="font-size"]),th:not([style*="font-size"])').forEach((elem) =>
+ {
+ elem.style.fontSize = font_size;
+ });
+ }
+
/**
* Resize htmlNode tag according to window size
* @param {type} _height excess height which comes from window resize
diff --git a/mail/inc/class.mail_compose.inc.php b/mail/inc/class.mail_compose.inc.php
index c792e50877..5eccbc6702 100644
--- a/mail/inc/class.mail_compose.inc.php
+++ b/mail/inc/class.mail_compose.inc.php
@@ -2526,8 +2526,7 @@ class mail_compose
switch ($_formData['mimeType'])
{
case 'html':
- $body = "\n".$_formData['body'];
+ $body = $_formData['body'];
if (!empty($attachment_links))
{
diff --git a/mail/js/app.js b/mail/js/app.js
index 465a761a4e..563a8c608c 100644
--- a/mail/js/app.js
+++ b/mail/js/app.js
@@ -5636,6 +5636,10 @@ app.classes.mail = AppJS.extend(
{
this.compose_submitAction(false);
}
+
+ // apply default font and -size before submitting to server for sending
+ this.et2?.getWidgetById('mail_htmltext')?.applyDefaultFont();
+
return false;
},