Index: art/Makefile.am
===================================================================
RCS file: /cvs/gnome/evolution/art/Makefile.am,v
retrieving revision 1.123
diff -u -p -r1.123 Makefile.am
--- art/Makefile.am	25 Sep 2006 13:45:10 -0000	1.123
+++ art/Makefile.am	7 Dec 2006 16:45:32 -0000
@@ -1,6 +1,21 @@
+icon16dir = $(datadir)/icons/hicolor/16x16/apps
+icon16_DATA = 16x16/evolution.png
+
+icon22dir = $(datadir)/icons/hicolor/22x22/apps
+icon22_DATA = 22x22/evolution.png
+
+icon24dir = $(datadir)/icons/hicolor/24x24/apps
+icon24_DATA = 24x24/evolution.png
+
+icon32dir = $(datadir)/icons/hicolor/32x32/apps
+icon32_DATA = 32x32/evolution.png
+
+svgicondir = $(datadir)/icons/hicolor/scalable/apps
+svgicon_DATA = scalable/evolution.svg
+
+gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor
+
 images_DATA = \
-	about-box.png			\
-	bcg.png				\
 	evolution-contacts-mini.png	\
 	monkey-16.png			\
 	offline.png			\
@@ -10,15 +25,14 @@ images_DATA = \
 	plus.png			\
 	minus.png
 
-install-data-local:
-	$(mkinstalldirs) $(DESTDIR)$(datadir)/pixmaps
-	$(INSTALL_DATA) $(srcdir)/evolution.png  $(DESTDIR)$(datadir)/pixmaps/evolution-$(BASE_VERSION).png
-if DEFAULT_BINARY
-	cd $(DESTDIR)$(datadir)/pixmaps && rm -f evolution.png && $(LN_S) evolution-$(BASE_VERSION).png evolution.png
-endif
-
-uninstall-local:
-	rm -f $(DESTDIR)$(datadir)/pixmaps/evolution-$(BASE_VERSION).png
+install-data-hook:
+	@-if test -z "$(DESTDIR)"; then \
+		echo "Updating Gtk icon cache."; \
+		$(gtk_update_icon_cache); \
+	else \
+		echo "*** Icon cache not updated.  After install, run this:"; \
+		echo "***   $(gtk_update_icon_cache)"; \
+	fi
 
 EXTRA_DIST = 				\
 	ChangeLog			\
@@ -27,6 +41,10 @@ EXTRA_DIST = 				\
 	broken-image-16.xpm		\
 	broken-image-24.xpm		\
 	empty.xpm			\
-	evolution.png			\
 	jump.xpm			\
+	$(icon16_DATA)			\
+	$(icon22_DATA)			\
+	$(icon24_DATA)			\
+	$(icon32_DATA)			\
+	$(svgicon_DATA)			\
 	$(images_DATA)
Index: mail/em-format-html-print.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-format-html-print.c,v
retrieving revision 1.8
diff -u -p -r1.8 em-format-html-print.c
--- mail/em-format-html-print.c	19 May 2005 06:46:23 -0000	1.8
+++ mail/em-format-html-print.c	7 Dec 2006 16:45:33 -0000
@@ -56,7 +56,7 @@ efhp_init(GObject *o)
 	efhp->window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
 	gtk_container_add((GtkContainer *)efhp->window, html);
 	gtk_widget_realize(html);
-	efhp->formathtml.show_rupert = FALSE;
+	efhp->formathtml.show_icon = FALSE;
 }
 
 static void
Index: mail/em-format-html.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-format-html.c,v
retrieving revision 1.94
diff -u -p -r1.94 em-format-html.c
--- mail/em-format-html.c	26 Nov 2006 18:30:14 -0000	1.94
+++ mail/em-format-html.c	7 Dec 2006 16:45:34 -0000
@@ -32,6 +32,7 @@
 #include <ctype.h>
 
 #include <glib.h>
+#include <gtk/gtk.h>
 #ifdef G_OS_WIN32
 /* Work around 'DATADIR' and 'interface' lossage in <windows.h> */
 #define DATADIR crap_DATADIR
@@ -156,7 +157,7 @@ efh_init(GObject *o)
 	efh->content_colour = 0xffffff;
 	efh->text_html_flags = CAMEL_MIME_FILTER_TOHTML_CONVERT_NL | CAMEL_MIME_FILTER_TOHTML_CONVERT_SPACES
 		| CAMEL_MIME_FILTER_TOHTML_MARK_CITATION;
-	efh->show_rupert = TRUE;
+	efh->show_icon = TRUE;
 }
 
 static void
@@ -1747,7 +1748,7 @@ efh_format_headers(EMFormatHTML *efh, Ca
 	const char *charset;
 	CamelContentType *ct;
 	struct _camel_header_raw *header;
-	int rupert = FALSE;
+	gboolean have_icon = FALSE;
 			
 	ct = camel_mime_part_get_content_type((CamelMimePart *)part);
 	charset = camel_content_type_param (ct, "charset");
@@ -1788,7 +1789,7 @@ efh_format_headers(EMFormatHTML *efh, Ca
 					
 					efh_format_header (emf, stream, part, &xmailer, h->flags, charset);
 					if (strstr(header->value, "Evolution"))
-						rupert = TRUE;
+						have_icon = TRUE;
 				} else if (!g_ascii_strcasecmp (header->name, h->name)) {
 					efh_format_header(emf, stream, part, header, h->flags, charset);
 				}
@@ -1801,19 +1802,23 @@ efh_format_headers(EMFormatHTML *efh, Ca
 	if (!efh->simple_headers) {
 		camel_stream_printf(stream, "</table></td>");
 
-		if (rupert && efh->show_rupert) {
+		if (have_icon && efh->show_icon) {
+			GtkIconInfo *icon_info;
 			char *classid;
-			CamelMimePart *iconpart;
-			char *pngfile;
+			CamelMimePart *iconpart = NULL;
 
 			classid = g_strdup_printf("icon:///em-format-html/%s/icon/header", emf->part_id->str);
 			camel_stream_printf(stream, "<td align=\"right\" valign=\"top\"><img width=16 height=16 src=\"%s\"></td>", classid);
 
-			pngfile = g_build_filename (EVOLUTION_ICONSDIR,
-						    "monkey-16.png",
-						    NULL);
-			iconpart = em_format_html_file_part((EMFormatHTML *)emf, "image/png", pngfile);
-			g_free (pngfile);
+			icon_info = gtk_icon_theme_lookup_icon (
+				gtk_icon_theme_get_default (),
+				"evolution", 16, GTK_ICON_LOOKUP_NO_SVG);
+			if (icon_info != NULL) {
+				iconpart = em_format_html_file_part (
+					(EMFormatHTML *) emf, "image/png",
+					gtk_icon_info_get_filename (icon_info));
+				gtk_icon_info_free (icon_info);
+			}
 
 			if (iconpart) {
 				em_format_add_puri(emf, sizeof(EMFormatPURI), classid, iconpart, efh_write_image);
Index: mail/em-format-html.h
===================================================================
RCS file: /cvs/gnome/evolution/mail/em-format-html.h,v
retrieving revision 1.17
diff -u -p -r1.17 em-format-html.h
--- mail/em-format-html.h	25 May 2006 04:59:47 -0000	1.17
+++ mail/em-format-html.h	7 Dec 2006 16:45:34 -0000
@@ -162,7 +162,7 @@ struct _EMFormatHTMLPObject {
  * @mark_citations:1: 
  * @simple_headers:1: 
  * @hide_headers:1: 
- * @show_rupert:1: 
+ * @show_icon:1: 
  * 
  * Most of these fields are private or read-only.
  *
@@ -192,7 +192,7 @@ struct _EMFormatHTML {
 	unsigned int mark_citations:1;
 	unsigned int simple_headers:1; /* simple header format, no box/table */
 	unsigned int hide_headers:1; /* no headers at all */
-	unsigned int show_rupert:1; /* whether we print rupert or not */
+	unsigned int show_icon:1; /* show an icon when the sender used Evo */
 	guint32 header_wrap_flags; 
 };
 
