Index: gtk/gtktrayicon-x11.c
===================================================================
RCS file: /cvs/gnome/gtk+/gtk/gtktrayicon-x11.c,v
retrieving revision 1.2
diff -u -w -p -r1.2 gtktrayicon-x11.c
--- gtk/gtktrayicon-x11.c	29 Aug 2005 19:15:24 -0000	1.2
+++ gtk/gtktrayicon-x11.c	28 Oct 2005 04:06:42 -0000
@@ -364,6 +364,7 @@ gtk_tray_icon_realize (GtkWidget *widget
   Display *xdisplay;
   char buffer[256];
   GdkWindow *root_window;
+  GtkStyle *style;
 
   if (GTK_WIDGET_CLASS (gtk_tray_icon_parent_class)->realize)
     GTK_WIDGET_CLASS (gtk_tray_icon_parent_class)->realize (widget);
@@ -394,6 +395,15 @@ gtk_tray_icon_realize (GtkWidget *widget
 
   root_window = gdk_screen_get_root_window (screen);
   
+  /* set background pixmap from parent */
+  gtk_widget_set_double_buffered (widget, FALSE);
+  style = gtk_style_copy (widget->style);
+  style->bg_pixmap[GTK_STATE_NORMAL] = (GdkPixmap*) GDK_PARENT_RELATIVE;
+  gtk_widget_set_style (widget, style);
+  g_object_unref (style);
+  gtk_style_set_background (widget->style, widget->window, GTK_STATE_NORMAL);
+  
+  
   /* Add a root window filter so that we get changes on MANAGER */
   gdk_window_add_filter (root_window,
 			 gtk_tray_icon_manager_filter, icon);
@@ -500,4 +510,3 @@ _gtk_tray_icon_get_orientation (GtkTrayI
 
   return icon->priv->orientation;
 }
-
