]> Pileus Git - ~andy/gtk/commitdiff
gdk: Use CAIRO_OPERATOR_SOURCE when painting double-buffered buffer
authorBenjamin Otte <otte@redhat.com>
Fri, 11 Mar 2011 00:27:37 +0000 (01:27 +0100)
committerBenjamin Otte <otte@redhat.com>
Fri, 11 Mar 2011 01:10:47 +0000 (02:10 +0100)
Otherwise RGBA surfaces will have issues.

This patch only affects non-implicit paints, ie no paints at all in the
real world.

gdk/gdkwindow.c

index 8a5c87d32df98881a11870e68426319dff721bcf..8318b99e91c981b180f732a1b60cbc27aec24dcd 100644 (file)
@@ -2969,6 +2969,7 @@ gdk_window_end_paint (GdkWindow *window)
       cairo_region_intersect (full_clip, paint->region);
 
       cr = gdk_cairo_create (window);
+      cairo_set_operator (cr, CAIRO_OPERATOR_SOURCE);
       cairo_set_source_surface (cr, paint->surface, 0, 0);
       gdk_cairo_region (cr, full_clip);
       cairo_fill (cr);