2009-01-27 [paul] 3.7.0cvs44
authorPaul Mangan <paul@claws-mail.org>
Tue, 27 Jan 2009 09:11:19 +0000 (09:11 +0000)
committerPaul Mangan <paul@claws-mail.org>
Tue, 27 Jan 2009 09:11:19 +0000 (09:11 +0000)
* src/messageview.c
always select text/calendar mimepart if suitable
plugin (i.e. vCalendar) is available

ChangeLog
PATCHSETS
configure.ac
src/messageview.c

index 0053d16330e79cf9332bef40be5138cf8fef53e8..66f41b1032127747e45bcd74211a7fc2a76f40d4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2009-01-27 [paul]      3.7.0cvs44
+
+       * src/messageview.c
+               always select text/calendar mimepart if suitable
+               plugin (i.e. vCalendar) is available
+
 2009-01-27 [paul]      3.7.0cvs43
 
        * src/folder.c
index d415797ece5fab17eb292b1c198a73f76cbe0643..116062887e69ef34c2523dba145c09240be487d2 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.18.2.15 -r 1.18.2.16 src/addressbook.h;  ) > 3.7.0cvs41.patchset
 ( cvs diff -u -r 1.382.2.495 -r 1.382.2.496 src/compose.c;  cvs diff -u -r 1.10.2.18 -r 1.10.2.19 src/privacy.c;  cvs diff -u -r 1.10.2.19 -r 1.10.2.20 src/privacy.h;  ) > 3.7.0cvs42.patchset
 ( cvs diff -u -r 1.213.2.187 -r 1.213.2.188 src/folder.c;  ) > 3.7.0cvs43.patchset
+( cvs diff -u -r 1.94.2.196 -r 1.94.2.197 src/messageview.c;  ) > 3.7.0cvs44.patchset
index b4b59d9fd69411b7588ac65f2590168dab5b8ab8..3d74d142535b1b454c33b90a629ac14316857ca4 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=7
 MICRO_VERSION=0
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=43
+EXTRA_VERSION=44
 EXTRA_RELEASE=
 EXTRA_GTK2_VERSION=
 
index 3fee520518cee49f0e384ceaf50a7b235c842cab..0a7427b0fdee389559cf27397e64a7803ca1f0b9 100644 (file)
@@ -1282,8 +1282,7 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
                        MimeInfo *alt_parent = mimeinfo;
 
                        /* if multipart/{related,mixed} part, look inside for a multipart/alternative child */
-                       if (prefs_common.promote_html_part &&
-                           mimeinfo->type == MIMETYPE_MULTIPART &&
+                       if (mimeinfo->type == MIMETYPE_MULTIPART &&
                            (!strcasecmp(mimeinfo->subtype, "related") ||
                             !strcasecmp(mimeinfo->subtype, "mixed"))) {
                                for (; mimeinfo; mimeinfo = procmime_mimeinfo_next(mimeinfo)) {
@@ -1299,8 +1298,14 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
                                                break;
                                        }
                                        if (mimeinfo->type == MIMETYPE_TEXT && 
-                                           !strcasecmp(mimeinfo->subtype, "html")) {
-                                               /* we got it */
+                                           !strcasecmp(mimeinfo->subtype, "calendar") &&
+                                           mimeview_has_viewer_for_content_type(messageview->mimeview,
+                                                                                "text/calendar")) {
+                                               mimeview_select_mimepart_icon(messageview->mimeview, mimeinfo);
+                                               goto done;
+                                       } else if (mimeinfo->type == MIMETYPE_TEXT && 
+                                           !strcasecmp(mimeinfo->subtype, "html") &&
+                                           prefs_common.promote_html_part) {
                                                mimeview_select_mimepart_icon(messageview->mimeview, mimeinfo);
                                                goto done;
                                        }
@@ -1309,8 +1314,7 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
 
                        /* if we now have a multipart/alternative part (possibly inside a
                         * multipart/{related,mixed} part, look for an HTML part inside */
-                       if (prefs_common.promote_html_part && mimeinfo && 
-                           mimeinfo->type == MIMETYPE_MULTIPART &&
+                       if (mimeinfo && mimeinfo->type == MIMETYPE_MULTIPART &&
                            !strcasecmp(mimeinfo->subtype, "alternative")) {
                                for (; mimeinfo; mimeinfo = procmime_mimeinfo_next(mimeinfo)) {
                                        if (mimeinfo->node->parent != alt_parent->node) {
@@ -1320,8 +1324,14 @@ gint messageview_show(MessageView *messageview, MsgInfo *msginfo,
                                                continue;
                                        }
                                        if (mimeinfo->type == MIMETYPE_TEXT && 
-                                           !strcasecmp(mimeinfo->subtype, "html")) {
-                                               /* we got it */
+                                           !strcasecmp(mimeinfo->subtype, "calendar") &&
+                                           mimeview_has_viewer_for_content_type(messageview->mimeview,
+                                                                                "text/calendar")) {
+                                               mimeview_select_mimepart_icon(messageview->mimeview, mimeinfo);
+                                               goto done;
+                                       } else if (mimeinfo->type == MIMETYPE_TEXT && 
+                                           !strcasecmp(mimeinfo->subtype, "html") &&
+                                           prefs_common.promote_html_part) {
                                                mimeview_select_mimepart_icon(messageview->mimeview, mimeinfo);
                                                goto done;
                                        }