X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=src%2Fwidgets%2Fmodest-attachment-view.c;h=2c0d6787633c41f7ca25035f311204f87e998f81;hb=e8d43d81f254f642959c3715b1ea8d0ad03ef39e;hp=3d724ac8e44a8437377082aac74ce09f71fc1b77;hpb=1cb8d01ea12aa1a9d17a25f7b57cd57f88d22f31;p=modest diff --git a/src/widgets/modest-attachment-view.c b/src/widgets/modest-attachment-view.c index 3d724ac..2c0d678 100644 --- a/src/widgets/modest-attachment-view.c +++ b/src/widgets/modest-attachment-view.c @@ -37,6 +37,7 @@ #include #include #include +#include #include #include #include @@ -66,7 +67,11 @@ struct _ModestAttachmentViewPrivate }; +#ifdef MODEST_TOOLKIT_HILDON2 +#define UNKNOWN_FILE_ICON "filemanager_unknown_file" +#else #define UNKNOWN_FILE_ICON "qgn_list_gene_unknown_file" +#endif #define MODEST_ATTACHMENT_VIEW_GET_PRIVATE(o) \ (G_TYPE_INSTANCE_GET_PRIVATE ((o), MODEST_TYPE_ATTACHMENT_VIEW, ModestAttachmentViewPrivate)) @@ -249,15 +254,27 @@ modest_attachment_view_set_part_default (TnyMimePartView *self, TnyMimePart *mim if (TNY_IS_HEADER (header)) { filename = g_strdup (tny_mime_part_get_filename (mime_part)); if (!filename) - filename = g_strdup (tny_header_get_subject (header)); + filename = tny_header_dup_subject (header); if (filename == NULL || filename[0] == '\0') filename = g_strdup (_("mail_va_no_subject")); - if (priv->is_purged) + if (priv->is_purged) { file_icon_name = modest_platform_get_file_icon_name (NULL, NULL, NULL); - else - file_icon_name = - modest_platform_get_file_icon_name ( - NULL, tny_mime_part_get_content_type (mime_part), NULL); + } else { + gchar *header_content_type; + header_content_type = modest_tny_mime_part_get_content_type (mime_part); + if ((g_str_has_prefix (header_content_type, "message/rfc822") || + g_str_has_prefix (header_content_type, "multipart/") || + g_str_has_prefix (header_content_type, "text/"))) { + file_icon_name = + modest_platform_get_file_icon_name ( + NULL, tny_mime_part_get_content_type (mime_part), NULL); + } else { + file_icon_name = + modest_platform_get_file_icon_name ( + NULL, header_content_type, NULL); + } + g_free (header_content_type); + } g_object_unref (header); } } else { @@ -266,7 +283,7 @@ modest_attachment_view_set_part_default (TnyMimePartView *self, TnyMimePart *mim file_icon_name = modest_platform_get_file_icon_name (NULL, NULL, NULL); } else { file_icon_name = modest_platform_get_file_icon_name ( - filename, tny_mime_part_get_content_type (mime_part), NULL); + filename, modest_tny_mime_part_get_content_type (mime_part), NULL); show_size = TRUE; } } @@ -363,6 +380,12 @@ modest_attachment_view_instance_init (GTypeInstance *instance, gpointer g_class) PangoContext *context; GtkWidget *box = NULL; +#ifdef MODEST_TOOLKIT_HILDON2 + PangoAttrList *attr_list; + attr_list = pango_attr_list_new (); + pango_attr_list_insert (attr_list, pango_attr_underline_new (PANGO_UNDERLINE_SINGLE)); +#endif + priv->mime_part = NULL; priv->icon = gtk_image_new (); priv->filename_view = gtk_label_new (""); @@ -376,6 +399,11 @@ modest_attachment_view_instance_init (GTypeInstance *instance, gpointer g_class) gtk_misc_set_alignment (GTK_MISC (priv->size_view), 0.0, 0.5); gtk_misc_set_alignment (GTK_MISC (priv->filename_view), 0.0, 0.5); +#ifdef MODEST_TOOLKIT_HILDON2 + gtk_label_set_attributes (GTK_LABEL (priv->filename_view), attr_list); + gtk_label_set_attributes (GTK_LABEL (priv->size_view), attr_list); +#endif + priv->get_size_stream = NULL; priv->size = 0; priv->detect_size = TRUE; @@ -398,6 +426,10 @@ modest_attachment_view_instance_init (GTypeInstance *instance, gpointer g_class) gtk_event_box_set_visible_window (GTK_EVENT_BOX (instance), TRUE); gtk_widget_set_events (GTK_WIDGET (instance), 0); +#ifdef MODEST_TOOLKIT_HILDON2 + pango_attr_list_unref (attr_list); +#endif + GTK_WIDGET_UNSET_FLAGS (GTK_WIDGET (instance), GTK_CAN_FOCUS); return;