summaryrefslogtreecommitdiff
path: root/src/cairoint.h
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2009-08-13 00:19:03 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2009-08-29 08:08:35 +0100
commit3a483c2896c28142a90bd0e282af3862e066adfe (patch)
tree54fde39b1db3d78d8cbaa9163cb6cdd258be1407 /src/cairoint.h
parente2c31183e96f84e7d40a9e5e2b6b8802d47628d0 (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.h9
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 {