diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2007-05-01 18:34:47 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2007-05-04 14:19:57 +0100 |
commit | 52472b740e821dee444ede1fff041a99d344daab (patch) | |
tree | dc4ad5725444af5f097b7a2547ee2810178d586d /src/cairo-xlib-surface-private.h | |
parent | a81823cdf9a147d02bb2365558ba667ab52fb3c9 (diff) | |
download | cairo-52472b740e821dee444ede1fff041a99d344daab.tar.gz |
[cairo-xlib-surface] Defer application of clip mask until required.
By deferring the issuing of the X requests to set the clip mask we can
theoretically avoid some redundant requests, but primarily we remove
another path where X requests are emitted.
Diffstat (limited to 'src/cairo-xlib-surface-private.h')
-rw-r--r-- | src/cairo-xlib-surface-private.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/cairo-xlib-surface-private.h b/src/cairo-xlib-surface-private.h index 15724d347..3bbf43e23 100644 --- a/src/cairo-xlib-surface-private.h +++ b/src/cairo-xlib-surface-private.h @@ -79,6 +79,7 @@ struct _cairo_xlib_surface { Picture dst_picture, src_picture; + unsigned int clip_dirty; cairo_bool_t have_clip_rects; XRectangle embedded_clip_rects[4]; XRectangle *clip_rects; @@ -90,4 +91,10 @@ struct _cairo_xlib_surface { XTransform xtransform; }; +enum { + CAIRO_XLIB_SURFACE_CLIP_DIRTY_GC = 0x01, + CAIRO_XLIB_SURFACE_CLIP_DIRTY_PICTURE = 0x02, + CAIRO_XLIB_SURFACE_CLIP_DIRTY_ALL = 0x03 +}; + #endif /* CAIRO_XLIB_SURFACE_PRIVATE_H */ |