Added more uris to linkify filter (fixes NB#100867).
[modest] / src / modest-text-utils.c
index deb2971..463c793 100644 (file)
@@ -109,14 +109,14 @@ struct _url_match_t {
 
 /* note: match MARK_AMP_URI_STR as well, because after txt->html, a '&' will look like $(MARK_AMP_URI_STR)"amp;" */
 #define MAIL_VIEWER_URL_MATCH_PATTERNS  {                              \
-       { "(file|rtsp|http|ftp|https|mms|mmsh|rtsp|rdp|lastfm)://[-a-z0-9_$.+!*(),;:@%=?/~#" MARK_AMP_URI_STR \
+       { "(file|rtsp|http|ftp|https|mms|mmsh|webcal|feed|rtsp|rdp|lastfm)://[-a-z0-9_$.+!*(),;:@%=?/~#" MARK_AMP_URI_STR \
                        "]+[-a-z0-9_$%" MARK_AMP_URI_STR "=?/~#]",      \
          NULL, NULL },\
        { "www\\.[-a-z0-9_$.+!*(),;:@%=?/~#" MARK_AMP_URI_STR "]+[-a-z0-9_$%" MARK_AMP_URI_STR "=?/~#]",\
                        NULL, "http://" },                              \
        { "ftp\\.[-a-z0-9_$.+!*(),;:@%=?/~#" MARK_AMP_URI_STR "]+[-a-z0-9_$%" MARK_AMP_URI_STR "=?/~#]",\
          NULL, "ftp://" },\
-       { "(jabberto|voipto|sipto|sip|chatto|xmpp):[-_a-z@0-9.+]+", \
+       { "(jabberto|voipto|sipto|sip|chatto|skype|xmpp):[-_a-z@0-9.+]+", \
           NULL, NULL},                                             \
        { "mailto:[-_a-z0-9.\\+]+@[-_a-z0-9.]+",                    \
          NULL, NULL},\
@@ -213,14 +213,17 @@ modest_text_utils_cite (const gchar *text,
        g_return_val_if_fail (text, NULL);
        g_return_val_if_fail (content_type, NULL);
        
-       if (!signature)
-               retval = g_strdup ("");
-       else if (strcmp(content_type, "text/html") == 0) {
-               tmp_sig = g_strconcat ("\n", SIGNATURE_MARKER,"\n", signature, NULL);
-               retval = modest_text_utils_convert_to_html_body(tmp_sig, -1, TRUE);
+       if (!signature) {
+               tmp_sig = g_strdup (text);
+       } else {
+               tmp_sig = g_strconcat (text, "\n", SIGNATURE_MARKER, "\n", signature, NULL);
+       }
+
+       if (strcmp (content_type, "text/html") == 0) {
+               retval = modest_text_utils_convert_to_html_body (tmp_sig, -1, TRUE);
                g_free (tmp_sig);
        } else {
-               retval = g_strconcat (text, "\n", SIGNATURE_MARKER, "\n", signature, NULL);
+               retval = tmp_sig;
        }
 
        return retval;
@@ -1247,14 +1250,16 @@ modest_text_utils_get_display_address (gchar *address)
                
        for (i = 0; address[i]; ++i) {
                if (address[i] == '<') {
-                       if (G_UNLIKELY(i == 0))
-                               return; /* there's nothing else, leave it */
-                       else {
+                       if (G_UNLIKELY(i == 0)) {
+                               break; /* there's nothing else, leave it */
+                       }else {
                                address[i] = '\0'; /* terminate the string here */
-                               return;
+                               break;
                        }
                }
        }
+
+       g_strchomp (address);
 }
 
 
@@ -1656,7 +1661,7 @@ modest_text_utils_get_display_size (guint64 size)
        const guint GB=1024 * MB;
 
        if (size == 0)
-               return g_strdup_printf (_FM("sfil_li_size_kb"));
+               return g_strdup_printf (_FM("sfil_li_size_kb"), 0);
        if (0 <= size && size < KB)
                return g_strdup_printf (_FM("sfil_li_size_1kb_99kb"), 1);
        else if (KB <= size && size < 100 * KB)