* Fixes NB#78835, copy option is now properly dimmed
[modest] / src / widgets / modest-gtkhtml-msg-view.c
index 4cdf862..98c8e4b 100644 (file)
 #include <widgets/modest-gtkhtml-msg-view.h>
 #include <widgets/modest-isearch-view.h>
 
+/* FIXNE: we should have no maemo-deps in widgets/ */
+#ifdef MODEST_PLATFORM_MAEMO
+#include "maemo/modest-hildon-includes.h"
+#endif /*MODEST_PLATFORM_MAEMO*/
+
 
 /* 'private'/'protected' functions */
 static void     modest_gtkhtml_msg_view_class_init   (ModestGtkhtmlMsgViewClass *klass);
@@ -1382,7 +1387,7 @@ on_fetch_url (GtkWidget *widget, const gchar *uri,
        TnyMimePart *part = NULL;
        
        priv = MODEST_GTKHTML_MSG_VIEW_GET_PRIVATE (self);
-       
+
        /*
         * we search for either something starting with cid:, or something
         * with no prefix at all; this latter case occurs when sending mails
@@ -1390,11 +1395,8 @@ on_fetch_url (GtkWidget *widget, const gchar *uri,
         */
        if (g_str_has_prefix (uri, "cid:"))  
                my_uri = uri + 4;  /* +4 ==> skip "cid:" */
-       else if (g_strstr_len (uri, strlen(uri), ":") == NULL)
-               my_uri = uri;      /* for outlook, no cid:, we check for ':',
-                                   * so external locations are excluded */
        else
-               return FALSE; /* we don't support non-embedded images */
+               my_uri = uri;
        
        /* now try to find the embedded image */
        part = find_cid_image (priv->msg, my_uri);
@@ -1403,7 +1405,7 @@ on_fetch_url (GtkWidget *widget, const gchar *uri,
                return FALSE;   
        }
 
-       tny_mime_part_decode_to_stream ((TnyMimePart*)part, stream);
+       tny_mime_part_decode_to_stream ((TnyMimePart*)part, stream, NULL);
        g_object_unref (G_OBJECT(part));
        return TRUE;
 }
@@ -1421,6 +1423,12 @@ set_message (ModestGtkhtmlMsgView *self, TnyMsg *msg)
        priv = MODEST_GTKHTML_MSG_VIEW_GET_PRIVATE(self);
        gtk_widget_set_no_show_all (priv->mail_header_view, FALSE);
 
+       html_vadj = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (priv->html_scroll));
+       html_vadj->upper = 0;
+       html_vadj->page_size = 0;
+       g_signal_emit_by_name (G_OBJECT (html_vadj), "changed");
+
+
        if (msg != priv->msg) {
                if (priv->msg)
                        g_object_unref (G_OBJECT(priv->msg));
@@ -1474,8 +1482,6 @@ set_message (ModestGtkhtmlMsgView *self, TnyMsg *msg)
        if (priv->vadj != NULL)
                priv->vadj->value = 0.0;
 
-       html_vadj = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (priv->html_scroll));
-
        g_signal_emit_by_name (G_OBJECT (html_vadj), "changed");
 
        /* This is a hack to force reallocation of scroll after drawing all the stuff. This