Kristian Høgsberg d470a6c
Disable damage notifications on move for manually redirected windows.
Kristian Høgsberg d470a6c
The automatic compositor needs damage notification on move, but a
Kristian Høgsberg d470a6c
compositing manager doesn't.
Kristian Høgsberg d470a6c
Kristian Høgsberg d470a6c
--- ./composite/compwindow.c.spiffiffity	2006-03-29 12:51:53.000000000 -0500
Kristian Høgsberg d470a6c
+++ ./composite/compwindow.c	2006-04-13 23:18:42.000000000 -0400
Kristian Høgsberg d470a6c
@@ -571,12 +571,15 @@
Kristian Høgsberg d470a6c
     }
Kristian Høgsberg d470a6c
     else
Kristian Høgsberg d470a6c
     {
Kristian Høgsberg d470a6c
+	CompWindowPtr	cw = GetCompWindow (pWin);
Kristian Høgsberg d470a6c
+
Kristian Høgsberg d470a6c
 	ptOldOrg.x -= dx;
Kristian Høgsberg d470a6c
 	ptOldOrg.y -= dy;
Kristian Høgsberg d470a6c
 	REGION_TRANSLATE (prgnSrc, prgnSrc,
Kristian Høgsberg d470a6c
 			  pWin->drawable.x - ptOldOrg.x,
Kristian Høgsberg d470a6c
 			  pWin->drawable.y - ptOldOrg.y);
Kristian Høgsberg d470a6c
-	DamageDamageRegion (&pWin->drawable, prgnSrc);
Kristian Høgsberg d470a6c
+	if (pWin->redirectDraw && cw->update == CompositeRedirectAutomatic)
Kristian Høgsberg d470a6c
+	  DamageDamageRegion (&pWin->drawable, prgnSrc);
Kristian Høgsberg d470a6c
     }
Kristian Høgsberg d470a6c
     cs->CopyWindow = pScreen->CopyWindow;
Kristian Høgsberg d470a6c
     pScreen->CopyWindow = compCopyWindow;
Kristian Høgsberg d470a6c
@@ -655,7 +658,8 @@
Kristian Høgsberg d470a6c
     /*
Kristian Høgsberg d470a6c
      * Report that as damaged so it will be redrawn
Kristian Høgsberg d470a6c
      */
Kristian Høgsberg d470a6c
-    DamageDamageRegion (&pWin->drawable, &damage);
Kristian Høgsberg d470a6c
+    if (cw->update == CompositeRedirectAutomatic)
Kristian Høgsberg d470a6c
+      DamageDamageRegion (&pWin->drawable, &damage);
Kristian Høgsberg d470a6c
     REGION_UNINIT (pScreen, &damage);
Kristian Høgsberg d470a6c
     /*
Kristian Høgsberg d470a6c
      * Save the new border clip region