aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
Diffstat (limited to 'mail')
-rw-r--r--mail/ChangeLog6
-rw-r--r--mail/em-format-html-display.c7
2 files changed, 12 insertions, 1 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index fb340f1499..a7d92febd6 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,9 @@
+2006-04-22 Srinivasa Ragavan <sragavan@novell.com>
+
+ * em-format-html-display.c: (efhd_attachment_button),
+ (efhd_format_attachment): Added code to create image cache of image
+ attachment in the ethread instead of main thread to avoid gui lockup.
+
2006-04-21 Sankar P <psankar@novell.com>
* mail-mt.c: (do_op_status):
diff --git a/mail/em-format-html-display.c b/mail/em-format-html-display.c
index 6ebf316d54..3a18ad28ab 100644
--- a/mail/em-format-html-display.c
+++ b/mail/em-format-html-display.c
@@ -166,6 +166,9 @@ struct _attach_puri {
CamelStream *output;
unsigned int shown:1;
+ /* Attachment */
+ EAttachment *attachment;
+
/* image stuff */
int fit_width;
int fit_height;
@@ -1552,7 +1555,7 @@ efhd_attachment_button(EMFormatHTML *efh, GtkHTMLEmbedded *eb, EMFormatHTMLPObje
if (efhd->priv->attachment_bar) {
file = camel_mime_part_get_filename(info->puri.part);
- new = e_attachment_new_from_mime_part (info->puri.part);
+ new = info->attachment;
if (!file) {
file = "attachment.dat";
@@ -2141,6 +2144,8 @@ efhd_format_attachment(EMFormat *emf, CamelStream *stream, CamelMimePart *part,
info->handle = handle;
info->shown = em_format_is_inline(emf, info->puri.part_id, info->puri.part, handle);
info->snoop_mime_type = emf->snoop_mime_type;
+ info->attachment = e_attachment_new_from_mime_part (info->puri.part);
+ e_attachment_bar_create_attachment_cache (info->attachment);
if (emf->valid) {
info->sign = emf->valid->sign.status;