diff -Nur eel2-2.19.90/eel/eel-background.c eel2-2.19.90.new/eel/eel-background.c --- eel2-2.19.90/eel/eel-background.c 2007-08-13 15:32:29.000000000 -0500 +++ eel2-2.19.90.new/eel/eel-background.c 2007-08-26 19:36:04.000000000 -0500 @@ -1030,11 +1030,18 @@ int window_height; gboolean changes_with_size; GdkPixmap *pixmap; + cairo_t *context; GdkGC *gc; GdkGCValues gc_values; GdkGCValuesMask value_mask; EelBackground *background; + + gboolean is_composited; + + is_composited = gdk_screen_is_composited ( + gdk_drawable_get_screen ( + GDK_DRAWABLE(widget->window))); if (event->window != widget->window) { return; @@ -1043,6 +1050,17 @@ background = eel_get_widget_background (widget); gdk_drawable_get_size (widget->window, &window_width, &window_height); + + if (eel_background_is_desktop (background) && is_composited) { + context = gdk_cairo_create (widget->window); + + cairo_set_source_rgba (context, 1.0f, 1.0f, 1.0f, 0.0f); + cairo_set_operator (context, CAIRO_OPERATOR_OVER); + cairo_paint (context); + + cairo_destroy(context); + return; + } pixmap = eel_background_get_pixmap_and_color (background, widget->window,