[PATCH 31/37] mi: Suppress exposure generation for backed windows

Adam Jackson ajax at redhat.com
Wed Oct 8 08:04:55 PDT 2014


Note that on the initial bs allocation this bit isn't set yet, so we'll
generate an initial exposure and bg paint, which is correct.

Signed-off-by: Adam Jackson <ajax at redhat.com>
---
 mi/mivaltree.c | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/mi/mivaltree.c b/mi/mivaltree.c
index b963740..760ee3a 100644
--- a/mi/mivaltree.c
+++ b/mi/mivaltree.c
@@ -451,13 +451,16 @@ miComputeClips(WindowPtr pParent,
      * new, just as for the border.
      */
 
-    if (oldVis == VisibilityFullyObscured || oldVis == VisibilityNotViewable) {
-        RegionCopy(&pParent->valdata->after.exposed, universe);
-    }
-    else if (newVis != VisibilityFullyObscured &&
-             newVis != VisibilityNotViewable) {
-        RegionSubtract(&pParent->valdata->after.exposed,
-                       universe, &pParent->clipList);
+    if (!pParent->backStorage) {
+        if (oldVis == VisibilityFullyObscured ||
+            oldVis == VisibilityNotViewable) {
+            RegionCopy(&pParent->valdata->after.exposed, universe);
+        }
+        else if (newVis != VisibilityFullyObscured &&
+                 newVis != VisibilityNotViewable) {
+            RegionSubtract(&pParent->valdata->after.exposed,
+                           universe, &pParent->clipList);
+        }
     }
 
     /* HACK ALERT - copying contents of regions, instead of regions */
-- 
1.9.3



More information about the xorg-devel mailing list