aboutsummaryrefslogtreecommitdiffstats
path: root/mail/em-format-html-display.c
diff options
context:
space:
mode:
Diffstat (limited to 'mail/em-format-html-display.c')
-rw-r--r--mail/em-format-html-display.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/mail/em-format-html-display.c b/mail/em-format-html-display.c
index 9d7a13d787..4564e8155f 100644
--- a/mail/em-format-html-display.c
+++ b/mail/em-format-html-display.c
@@ -182,6 +182,7 @@ struct _attach_puri {
int fit_width;
int fit_height;
GtkImage *image;
+ GtkWidget *event_box;
/* Optional Text Mem Stream */
CamelStreamMem *mstream;
@@ -1695,6 +1696,11 @@ efhd_image_unallocate (struct _EMFormatPURI * puri)
{
struct _attach_puri *info = (struct _attach_puri *) puri;
g_signal_handlers_disconnect_by_func(info->html, efhd_image_resized, info);
+
+ g_signal_handlers_disconnect_by_func(info->event_box, efhd_image_popup, info);
+ g_signal_handlers_disconnect_by_func(info->event_box, efhd_image_change_cursor, info);
+ g_signal_handlers_disconnect_by_func(info->event_box, efhd_attachment_popup_menu, info);
+ g_signal_handlers_disconnect_by_func(info->event_box, efhd_image_fit_width, info);
}
static gboolean
@@ -1727,6 +1733,7 @@ efhd_attachment_image(EMFormatHTML *efh, GtkHTMLEmbedded *eb, EMFormatHTMLPObjec
}
box = gtk_event_box_new();
+ info->event_box = box;
gtk_container_add((GtkContainer *)box, (GtkWidget *)info->image);
gtk_widget_show_all(box);
gtk_container_add((GtkContainer *)eb, box);