diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2009-08-13 00:19:03 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2009-08-29 08:08:35 +0100 |
commit | 3a483c2896c28142a90bd0e282af3862e066adfe (patch) | |
tree | 54fde39b1db3d78d8cbaa9163cb6cdd258be1407 /src/cairoint.h | |
parent | e2c31183e96f84e7d40a9e5e2b6b8802d47628d0 (diff) |
[gstate] Convert simple mask() into a paint()
As using mask() prevents various optimisations in the backends (for
example the use of geometric clips) and for some may trigger fallbacks,
perform the simplifications usually done (too late) by the pattern layer
in the generic gstate layer. This allows us on the odd occasion to
transform a mask() into a paint() but perhaps more importantly removes the
need for identical transformations in each backend.
Diffstat (limited to 'src/cairoint.h')
-rw-r--r-- | src/cairoint.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/cairoint.h b/src/cairoint.h index c4b22f24..25849818 100644 --- a/src/cairoint.h +++ b/src/cairoint.h @@ -937,11 +937,12 @@ typedef union { } cairo_gradient_pattern_union_t; typedef union { - cairo_pattern_t base; + cairo_pattern_type_t type; + cairo_pattern_t base; - cairo_solid_pattern_t solid; - cairo_surface_pattern_t surface; - cairo_gradient_pattern_union_t gradient; + cairo_solid_pattern_t solid; + cairo_surface_pattern_t surface; + cairo_gradient_pattern_union_t gradient; } cairo_pattern_union_t; typedef struct _cairo_surface_attributes { |