summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorJasper St. Pierre <jstpierre@mecheye.net>2014-07-28 22:04:09 +0200
committerJasper St. Pierre <jstpierre@mecheye.net>2014-07-29 10:49:39 +0200
commit227b4a862085e233baa5de8ba143309954bae541 (patch)
tree7da3b8b211b8d80e93f1cc43b852c8d0aa3efc83 /gtk
parent09a36b1e9fde589ecdf22c11b055f7b4aff8dfd4 (diff)
downloadgtk+-227b4a862085e233baa5de8ba143309954bae541.tar.gz
gtkcssshadowvalue: Use the blur surface as a mask, instead of painting it
This will make it easier to use an A8 for our blurred surface instead of a ARGB32, which makes things a lot easier and faster.
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gtkcssshadowvalue.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gtk/gtkcssshadowvalue.c b/gtk/gtkcssshadowvalue.c
index 87300dcbc6..da6d08cd08 100644
--- a/gtk/gtkcssshadowvalue.c
+++ b/gtk/gtkcssshadowvalue.c
@@ -366,8 +366,8 @@ gtk_css_shadow_value_finish_drawing (const GtkCssValue *shadow,
/* Blur the surface. */
_gtk_cairo_blur_surface (surface, radius);
- cairo_set_source_surface (original_cr, surface, 0, 0);
- cairo_paint (original_cr);
+ gdk_cairo_set_source_rgba (original_cr, _gtk_css_rgba_value_get_rgba (shadow->color));
+ cairo_mask_surface (original_cr, surface, 0, 0);
cairo_destroy (cr);
cairo_surface_destroy (surface);