aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-cal-component-memo-preview.c
diff options
context:
space:
mode:
Diffstat (limited to 'calendar/gui/e-cal-component-memo-preview.c')
-rw-r--r--calendar/gui/e-cal-component-memo-preview.c23
1 files changed, 6 insertions, 17 deletions
diff --git a/calendar/gui/e-cal-component-memo-preview.c b/calendar/gui/e-cal-component-memo-preview.c
index 27761983c5..5f65001d25 100644
--- a/calendar/gui/e-cal-component-memo-preview.c
+++ b/calendar/gui/e-cal-component-memo-preview.c
@@ -40,6 +40,7 @@
#include "calendar-config.h"
#include "e-cal-component-memo-preview.h"
#include "e-cal-component-preview.h"
+#include <camel/camel-mime-filter-tohtml.h>
struct _ECalComponentMemoPreviewPrivate {
GtkWidget *html;
@@ -201,27 +202,15 @@ write_html (GtkHTMLStream *stream, ECal *ecal, ECalComponent *comp, icaltimezone
gtk_html_stream_printf (stream, "<TD><PRE>");
for (node = l; node != NULL; node = node->next) {
- gint i, j, len;
- GString *string;
+ char *html;
text = * (ECalComponentText *) node->data;
- len = (text.value ? strlen (text.value) : 0);
- string = g_string_sized_new (len + 1);
+ html = camel_text_to_html (text.value ? text.value : "", CAMEL_MIME_FILTER_TOHTML_CONVERT_URLS | CAMEL_MIME_FILTER_TOHTML_CONVERT_ADDRESSES, 0);
- for (i = 0, j=0; i < len; i++, j++) {
- if (text.value[i] == '\n'){
- string = g_string_append_len (string, "<BR>", 4);
- }
- else if (text.value[i] == '<')
- string = g_string_append_len (string, "&lt;", 4);
- else if (text.value[i] == '>')
- string = g_string_append_len (string, "&gt;", 4);
- else
- string = g_string_append_c (string, text.value[i]);
- }
+ if (html)
+ gtk_html_stream_printf (stream, "%s", html);
- gtk_html_stream_printf (stream,"%s", string->str);
- g_string_free (string, TRUE);
+ g_free (html);
}
gtk_html_stream_printf (stream, "</PRE></TD></TR>");