changeset 13690:6a86f4ec744e

[gaim-migrate @ 16093] SF Patch #1472156 from miguelrp "Current betas of gaim render the buddy icon to a pifmap with a 1-bit alpha mask before displaying them in the conversation window. This patch eliminates the transformation from a pixbuf to a pixmap and, at the same time, preserves the full alpha contents of the original buddy icon." Perhaps I'm missing something, but the conversion doesn't seem necessary. Icons still display properly for me. committer: Tailor Script <tailor@pidgin.im>
author Richard Laager <rlaager@wiktel.com>
date Tue, 25 Apr 2006 17:15:00 +0000
parents 5fb687f9965c
children 87b027bb1f15
files src/gtkconv.c
diffstat 1 files changed, 4 insertions(+), 20 deletions(-) [+]
line wrap: on
line diff
--- a/src/gtkconv.c	Mon Apr 24 20:51:45 2006 +0000
+++ b/src/gtkconv.c	Tue Apr 25 17:15:00 2006 +0000
@@ -2275,8 +2275,6 @@
 
 	GdkPixbuf *buf;
 	GdkPixbuf *scale;
-	GdkPixmap *pm;
-	GdkBitmap *bm;
 	gint delay;
 	int scale_width, scale_height;
 
@@ -2299,15 +2297,10 @@
 		    gdk_pixbuf_animation_get_height(gtkconv->u.im->anim), 1),
 		GDK_INTERP_BILINEAR);
 
-	gdk_pixbuf_render_pixmap_and_mask(scale, &pm, &bm, 100);
+	gtk_image_set_from_pixbuf(GTK_IMAGE(gtkconv->u.im->icon), scale);
 	g_object_unref(G_OBJECT(scale));
-	gtk_image_set_from_pixmap(GTK_IMAGE(gtkconv->u.im->icon), pm, bm);
-	g_object_unref(G_OBJECT(pm));
 	gtk_widget_queue_draw(gtkconv->u.im->icon);
 
-	if (bm)
-		g_object_unref(G_OBJECT(bm));
-
 	delay = gdk_pixbuf_animation_iter_get_delay_time(gtkconv->u.im->iter);
 
 	if (delay < 100)
@@ -5758,8 +5751,6 @@
 	GtkWidget *event;
 	GtkWidget *frame;
 	GdkPixbuf *scale;
-	GdkPixmap *pm;
-	GdkBitmap *bm;
 	int scale_width, scale_height;
 
 	GaimAccount *account;
@@ -5857,14 +5848,10 @@
 				    gdk_pixbuf_animation_get_height(gtkconv->u.im->anim), 1),
 				GDK_INTERP_BILINEAR);
 
-	gdk_pixbuf_render_pixmap_and_mask(scale, &pm, &bm, 100);
-	g_object_unref(G_OBJECT(scale));
-
 	gtkconv->u.im->icon_container = gtk_vbox_new(FALSE, 0);
 
 	frame = gtk_frame_new(NULL);
-	gtk_frame_set_shadow_type(GTK_FRAME(frame),
-							  (bm ? GTK_SHADOW_NONE : GTK_SHADOW_IN));
+	gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_NONE);
 	gtk_box_pack_start(GTK_BOX(gtkconv->u.im->icon_container), frame,
 					   FALSE, FALSE, 0);
 
@@ -5874,15 +5861,12 @@
 					 G_CALLBACK(icon_menu), gtkconv);
 	gtk_widget_show(event);
 
-	gtkconv->u.im->icon = gtk_image_new_from_pixmap(pm, bm);
+	gtkconv->u.im->icon = gtk_image_new_from_pixbuf(scale);
 	gtk_widget_set_size_request(gtkconv->u.im->icon, scale_width, scale_height);
 	gtk_container_add(GTK_CONTAINER(event), gtkconv->u.im->icon);
 	gtk_widget_show(gtkconv->u.im->icon);
 
-	g_object_unref(G_OBJECT(pm));
-
-	if (bm)
-		g_object_unref(G_OBJECT(bm));
+	g_object_unref(G_OBJECT(scale));
 
 	gtk_box_pack_start(GTK_BOX(gtkconv->lower_hbox),
 			   gtkconv->u.im->icon_container, FALSE, FALSE, 0);