Blob Blame History Raw
--- gnome-panel-2.26.0/gnome-panel/panel-util.h.orig	2009-04-13 15:12:27.000000000 -0400
+++ gnome-panel-2.26.0/gnome-panel/panel-util.h	2009-04-13 15:19:17.000000000 -0400
@@ -65,6 +65,9 @@ void panel_util_set_tooltip_text (GtkWid
 char *panel_util_get_icon_name_from_g_icon (GIcon *gicon);
 GdkPixbuf *panel_util_get_pixbuf_from_g_loadable_icon (GIcon *gicon,
 						       int    size);
+GdkPixbuf *panel_util_get_pixbuf_from_gicon (GtkIconTheme  *icon_theme,
+                                             GIcon         *gicon,
+                                             int            size);
 GFile *panel_util_get_file_optional_homedir (const char *location);
 
 G_END_DECLS
--- gnome-panel-2.26.0/gnome-panel/panel-util.c.orig	2009-04-13 15:12:22.000000000 -0400
+++ gnome-panel-2.26.0/gnome-panel/panel-util.c	2009-04-13 15:19:09.000000000 -0400
@@ -832,6 +832,33 @@ panel_util_get_pixbuf_from_g_loadable_ic
 	return pixbuf;
 }
 
+GdkPixbuf *
+panel_util_get_pixbuf_from_gicon (GtkIconTheme  *icon_theme,
+				  GIcon *gicon,
+				  int    size)
+{
+	GdkPixbuf    *pixbuf;
+	GtkIconInfo  *icon_info;
+
+	g_return_val_if_fail (G_IS_ICON (gicon), NULL);
+
+	pixbuf = NULL;
+
+	icon_info = gtk_icon_theme_lookup_by_gicon (icon_theme,
+						    gicon,
+						    size,
+						    0);
+	if (icon_info == NULL)
+		goto out;
+
+	pixbuf = gtk_icon_info_load_icon (icon_info, NULL);
+
+	gtk_icon_info_free (icon_info);
+
+ out:
+	return pixbuf;
+}
+
 static char *
 panel_util_get_file_display_name_if_mount (GFile *file)
 {
--- gnome-panel-2.26.0/gnome-panel/menu.c.orig	2009-04-13 15:05:37.000000000 -0400
+++ gnome-panel-2.26.0/gnome-panel/menu.c	2009-04-13 15:22:38.000000000 -0400
@@ -599,7 +599,7 @@ load_icons_handler_again:
 						   &long_operation);
 			g_free (icon_name);
 		} else {
-			pb = panel_util_get_pixbuf_from_g_loadable_icon (icon->gicon, icon_height);
+                        pb = panel_util_get_pixbuf_from_gicon (icon->icon_theme, icon->gicon, icon_height);
 			if (!pb && icon->fallback_image) {
 				pb = panel_make_menu_icon (icon->icon_theme,
 							   NULL,