[fusion-commits] Wall plugin: Changes to 'master' (c5b30c9111e9048f82d19eb8a7e16eb4f8d4f87a)

onestone at server.opencompositing.org onestone at server.opencompositing.org
Mon May 5 18:41:49 CEST 2008


New commits:
commit c5b30c9111e9048f82d19eb8a7e16eb4f8d4f87a
Author: Dennis Kasprzyk <onestone at opencompositing.org>
Date:   Mon May 5 18:41:40 2008 +0200

    Handle clear mask correctly.


 wall.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)


Modified: fusion/plugins/wall/wall.c
===================================================================
--- fusion/plugins/wall/wall.c
+++ fusion/plugins/wall/wall.c
@@ -1425,11 +1425,14 @@ wallPaintTransformedOutput (CompScreen              *s,
 			    unsigned int            mask)
 {
     WALL_SCREEN (s);
+    Bool clear = (mask & PAINT_SCREEN_CLEAR_MASK);
 
     if (ws->miniScreen)
     {
 	CompTransform sTransform = *transform;
 
+	mask &= ~PAINT_SCREEN_CLEAR_MASK;
+
 	/* move each screen to the correct output position */
 	matrixTranslate (&sTransform,
 			 -output->region.extents.x1 / output->width,
@@ -1475,7 +1478,8 @@ wallPaintTransformedOutput (CompScreen              *s,
 	float         px, py;
 	int           tx, ty;
 
-	clearTargetOutput (s->display, GL_COLOR_BUFFER_BIT);
+	if (clear)
+	    clearTargetOutput (s->display, GL_COLOR_BUFFER_BIT);
 
 	px = ws->curPosX;
 	py = ws->curPosY;


More information about the commits mailing list