summaryrefslogtreecommitdiff
path: root/src/skia/cairo-skia-context.cpp
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2012-03-10 11:02:13 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2012-03-12 12:05:26 +0000
commite0be011207a2efdd81f9fdededa6f6ec2031cbf1 (patch)
tree7964c927ff5ae4e11179fba7289a70f0b03b5b69 /src/skia/cairo-skia-context.cpp
parentf7897e7cbd43e6ed01b5fe13ae76a65c1d4a5e83 (diff)
downloadcairo-e0be011207a2efdd81f9fdededa6f6ec2031cbf1.tar.gz
skia: Setup opacity for cairo_paint_with_alpha()
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/skia/cairo-skia-context.cpp')
-rw-r--r--src/skia/cairo-skia-context.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/skia/cairo-skia-context.cpp b/src/skia/cairo-skia-context.cpp
index e5d482807..327e536f4 100644
--- a/src/skia/cairo-skia-context.cpp
+++ b/src/skia/cairo-skia-context.cpp
@@ -1258,12 +1258,16 @@ _cairo_skia_context_paint_with_alpha (void *abstract_cr,
double alpha)
{
cairo_skia_context_t *cr = (cairo_skia_context_t *) abstract_cr;
+ cairo_status_t status;
if (CAIRO_ALPHA_IS_OPAQUE (alpha))
return _cairo_skia_context_paint (cr);
- /*XXX */
- return _cairo_skia_context_paint (cr);
+ cr->paint->setAlpha(SkScalarRound(255*alpha));
+ status = _cairo_skia_context_paint (cr);
+ cr->paint->setAlpha(255);
+
+ return status;
}
static cairo_status_t