--- 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,