diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2011-07-26 16:37:29 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2011-07-26 16:38:31 +0100 |
commit | b492b69d4f6e4fba41558b1ca066203c4e88c856 (patch) | |
tree | 8b08534f7ef0651744aa034e7046dcb7600f539d /src/cairo-surface-wrapper.c | |
parent | 91faf9c1cf79f44b48c0f14d2d551a68bf38b5a5 (diff) |
wrapper: translate the clip by the device transform
A stepping stone, the translation was accidentally dropped when
changing the clipping to be performed first.
Fixes twin.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/cairo-surface-wrapper.c')
-rw-r--r-- | src/cairo-surface-wrapper.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/cairo-surface-wrapper.c b/src/cairo-surface-wrapper.c index d2fead83e..9ed562012 100644 --- a/src/cairo-surface-wrapper.c +++ b/src/cairo-surface-wrapper.c @@ -126,6 +126,12 @@ _cairo_surface_wrapper_get_clip (cairo_surface_wrapper_t *wrapper, copy = _cairo_clip_translate (copy, -wrapper->extents.x, -wrapper->extents.y); + if (! _cairo_matrix_is_identity (&wrapper->target->device_transform)) { + /* XXX */ + copy = _cairo_clip_translate (copy, + wrapper->target->device_transform.x0, + wrapper->target->device_transform.y0); + } if (wrapper->clip) copy = _cairo_clip_intersect_clip (copy, wrapper->clip); |