summaryrefslogtreecommitdiff
path: root/src/cairo-paginated-surface-private.h
diff options
context:
space:
mode:
authorCarl Worth <cworth@cworth.org>2006-04-14 16:18:36 -0700
committerCarl Worth <cworth@cworth.org>2006-04-14 16:18:36 -0700
commite8a0da637fda4a29281cfb4f463169e51c300c42 (patch)
tree624ed9a31d0b251ca03147703328cdbea0856d0a /src/cairo-paginated-surface-private.h
parentb8fb8dc375d2828a962bac2e1f50f44d8ec8cbee (diff)
downloadcairo-e8a0da637fda4a29281cfb4f463169e51c300c42.tar.gz
Move optimization of CLEAR on blank page up from PS to paginated surface.
Diffstat (limited to 'src/cairo-paginated-surface-private.h')
-rw-r--r--src/cairo-paginated-surface-private.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/cairo-paginated-surface-private.h b/src/cairo-paginated-surface-private.h
index 247ed7262..b5e4d5c9b 100644
--- a/src/cairo-paginated-surface-private.h
+++ b/src/cairo-paginated-surface-private.h
@@ -116,6 +116,14 @@ typedef struct _cairo_paginated_surface_backend {
* CAIRO_STATUS_SUCCESS or CAIRO_INT_STATUS_UNSUPPORTED to indicate
* whether rendering would be supported. And it should do this as
* quickly as possible.
+ *
+ * NOTE: The paginated surface layer assumes that the target surface
+ * is "blank" by default at the beginning of each page, without any
+ * need for an explicit erasea operation, (as opposed to an image
+ * surface, for example, which might have uninitialized content
+ * originally). As such, it optimizes away CLEAR operations that
+ * happen at the beginning of each page---the target surface will not
+ * even see these operations.
*/
cairo_private cairo_surface_t *
_cairo_paginated_surface_create (cairo_surface_t *target,