summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2013-05-30 19:48:33 +0200
committerChris Wilson <chris@chris-wilson.co.uk>2013-09-05 16:08:19 +0100
commit633d573889ad685c8f07e9ee72f6a1d240dfacf2 (patch)
tree6f8816ce7c8cd0f57dd969cbb6eb9266e851c594
parentdb7e551a6bf06a0aa7e2e6b3744b7663807d003f (diff)
default-context: Inherit device scale in push_group surface
Without this we will only render to part of the newly created surface and then copy+scale that part back, which causes fuzziness.
-rw-r--r--src/cairo-default-context.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/cairo-default-context.c b/src/cairo-default-context.c
index aec5b10c4..77b6eef9f 100644
--- a/src/cairo-default-context.c
+++ b/src/cairo-default-context.c
@@ -189,6 +189,10 @@ _cairo_default_context_push_group (void *abstract_cr, cairo_content_t content)
parent_surface->device_transform.x0 - extents.x,
parent_surface->device_transform.y0 - extents.y);
+ _cairo_surface_set_device_scale (group_surface,
+ parent_surface->device_transform.xx,
+ parent_surface->device_transform.yy);
+
/* If we have a current path, we need to adjust it to compensate for
* the device offset just applied. */
_cairo_path_fixed_translate (cr->path,