summaryrefslogtreecommitdiff
blob: 5945f92506f05a7d2e9488aaf29ec79672a1d79f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
diff --exclude-from=/home/dang/.diffrc -up -ruN evolution-2.8.2.1.orig/mail/em-format-html-display.c evolution-2.8.2.1/mail/em-format-html-display.c
--- evolution-2.8.2.1.orig/mail/em-format-html-display.c	2006-10-16 08:38:58.000000000 -0400
+++ evolution-2.8.2.1/mail/em-format-html-display.c	2007-01-29 12:48:30.000000000 -0500
@@ -181,6 +181,7 @@ struct _attach_puri {
 	int fit_width;
 	int fit_height;
 	GtkImage *image;
+	GtkWidget *event_box;
 
 	/* Signed / Encrypted */
         camel_cipher_validity_sign_t sign;
@@ -1689,6 +1690,11 @@ efhd_image_unallocate (struct _EMFormatP
 {
 	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_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
@@ -1721,6 +1727,7 @@ efhd_attachment_image(EMFormatHTML *efh,
 	}
 
 	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);