summaryrefslogtreecommitdiff
path: root/include/windowstr.h
diff options
context:
space:
mode:
authorPeter Hutterer <peter@cs.unisa.edu.au>2007-08-12 15:31:10 +0930
committerPeter Hutterer <peter@cs.unisa.edu.au>2007-08-12 15:31:10 +0930
commitf367285fd5825e0adc271982a529c9904ad65c89 (patch)
tree4e7081da773c51cc9448cefe17c2c3639f33ad6d /include/windowstr.h
parentb1272eefd9a3e340d65c14903f337747ec82d021 (diff)
parentff4bd3addb48df3eacc4b121cc249a7f38eb981a (diff)
Merge branch 'master' into mpx
Conflicts: Xi/exevents.c dix/devices.c dix/getevents.c include/dix.h mi/mieq.c
Diffstat (limited to 'include/windowstr.h')
-rw-r--r--include/windowstr.h29
1 files changed, 28 insertions, 1 deletions
diff --git a/include/windowstr.h b/include/windowstr.h
index 959ea0ec1..8e6d451d1 100644
--- a/include/windowstr.h
+++ b/include/windowstr.h
@@ -122,6 +122,33 @@ typedef struct _WindowOpt {
#define BackgroundPixel 2L
#define BackgroundPixmap 3L
+/*
+ * The redirectDraw field can have one of three values:
+ *
+ * RedirectDrawNone
+ * A normal window; painted into the same pixmap as the parent
+ * and clipping parent and siblings to its geometry. These
+ * windows get a clip list equal to the intersection of their
+ * geometry with the parent geometry, minus the geometry
+ * of overlapping None and Clipped siblings.
+ * RedirectDrawAutomatic
+ * A redirected window which clips parent and sibling drawing.
+ * Contents for these windows are manage inside the server.
+ * These windows get an internal clip list equal to their
+ * geometry.
+ * RedirectDrawManual
+ * A redirected window which does not clip parent and sibling
+ * drawing; the window must be represented within the parent
+ * geometry by the client performing the redirection management.
+ * Contents for these windows are managed outside the server.
+ * These windows get an internal clip list equal to their
+ * geometry.
+ */
+
+#define RedirectDrawNone 0
+#define RedirectDrawAutomatic 1
+#define RedirectDrawManual 2
+
typedef struct _Window {
DrawableRec drawable;
WindowPtr parent; /* ancestor chain */
@@ -158,7 +185,7 @@ typedef struct _Window {
unsigned dontPropagate:3;/* index into DontPropagateMasks */
unsigned forcedBS:1; /* system-supplied backingStore */
#ifdef COMPOSITE
- unsigned redirectDraw:1; /* rendering is redirected from here */
+ unsigned redirectDraw:2; /* rendering is redirected from here */
#endif
DevUnion *devPrivates;
} WindowRec;