--- compiz.h 2007-04-05 01:15:17.000000000 +0300
+++ compiz.h-new 2007-04-05 01:27:32.000000000 +0300
@@ -1150,6 +1150,12 @@
#define PAINT_SCREEN_TRANSFORMED_MASK (1 << 2)
#define PAINT_SCREEN_WITH_TRANSFORMED_WINDOWS_MASK (1 << 3)
#define PAINT_SCREEN_CLEAR_MASK (1 << 4)
+#define PAINT_SCREEN_ORDER_BACK_TO_FRONT_MASK (1 << 5)
+#define PAINT_SCREEN_ORDER_FRONT_TO_BACK_MASK (1 << 6)
+/* A plugin that sets PAINT_SCREEN_ORDER_FRONT_TO_BACK_MASK will get reversed painting.
+ A plugin that sets both PAINT_SCREEN_ORDER_FRONT_TO_BACK_MASK and PAINT_SCREEN_ORDER_BACK_TO_FRONT_MASK
+ will get both normal and reversed painting one after the other,
+ and will check paint window mask to avoid painting the window twice. This allows more complex drawing order.*/
typedef Bool (*PaintScreenProc) (CompScreen *screen,
const ScreenPaintAttrib *sAttrib,
@@ -1215,6 +1221,13 @@
*/
#define PAINT_WINDOW_BLEND_MASK (1 << 19)
+/*
+ flags that indicate the painting order which is used
+ in paintScreen when drawing the window.
+*/
+#define PAINT_WINDOW_BACK_TO_FRONT_MASK (1 << 20)
+#define PAINT_WINDOW_FRONT_TO_BACK_MASK (1 << 21)
+
typedef Bool (*PaintWindowProc) (CompWindow *window,
const WindowPaintAttrib *attrib,