diff options
author | Martin Robinson <mrobinson@igalia.com> | 2011-12-15 10:49:27 -0800 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2011-12-15 19:29:17 +0000 |
commit | bbe692372d593a70d80de9fdb0de521a9f012f08 (patch) | |
tree | 9f0c9c8e45b8a68b89da65eae9522c00ba51d8f5 | |
parent | b98c8c126989e1158c3f78d8e5f20834a2af10b2 (diff) |
gl/msaa: Ignore the antialiasing property of the clip.
If the clip suggests anti-aliasing and we don't support it,
draw the clip anyway. Currently disabling anti-aliasing does
not disable anti-aliasing on certain clips.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r-- | src/cairo-gl-msaa-compositor.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/cairo-gl-msaa-compositor.c b/src/cairo-gl-msaa-compositor.c index bfd23d48..fdd96662 100644 --- a/src/cairo-gl-msaa-compositor.c +++ b/src/cairo-gl-msaa-compositor.c @@ -141,10 +141,16 @@ _draw_clip (cairo_gl_context_t *ctx, if (unlikely (status)) return status; - if (antialias != CAIRO_ANTIALIAS_NONE) { - _cairo_polygon_fini (&polygon); - return CAIRO_INT_STATUS_UNSUPPORTED; - } + /* We ignore the antialias mode of the clip here, since the user requested + * unantialiased rendering of their path and we expect that this stencil + * based rendering of the clip to be a reasonable approximation to + * the intersection between that clip and the path. + * + * In other words, what the user expects when they try to perform + * a geometric intersection between an unantialiased polygon and an + * antialiased polygon is open to interpretation. And we choose the fast + * option. + */ _cairo_traps_init (&traps); status = _cairo_bentley_ottmann_tessellate_polygon (&traps, |