diff --git a/dix/window.c b/dix/window.c index 7a2866ae9..d43ef0370 100644 --- a/dix/window.c +++ b/dix/window.c @@ -2059,10 +2059,10 @@ ReflectStackChange(WindowPtr pWin, WindowPtr pSib, VTKind kind) if (anyMarked) { (*pScreen->ValidateTree) (pLayerWin->parent, pFirstChange, kind); (*pScreen->HandleExposures) (pLayerWin->parent); + if (pWin->drawable.pScreen->PostValidateTree) + (*pScreen->PostValidateTree) (pLayerWin->parent, pFirstChange, + kind); } - if (anyMarked && pWin->drawable.pScreen->PostValidateTree) - (*pScreen->PostValidateTree) (pLayerWin->parent, pFirstChange, - kind); } if (pWin->realized) WindowsRestructured(); @@ -2576,10 +2576,10 @@ MapWindow(WindowPtr pWin, ClientPtr client) if (anyMarked) { (*pScreen->ValidateTree) (pLayerWin->parent, pLayerWin, VTMap); (*pScreen->HandleExposures) (pLayerWin->parent); + if (pScreen->PostValidateTree) + (*pScreen->PostValidateTree) (pLayerWin->parent, pLayerWin, + VTMap); } - if (anyMarked && pScreen->PostValidateTree) - (*pScreen->PostValidateTree) (pLayerWin->parent, pLayerWin, - VTMap); } WindowsRestructured(); } @@ -2657,10 +2657,10 @@ MapSubwindows(WindowPtr pParent, ClientPtr client) if (anyMarked) { (*pScreen->ValidateTree) (pLayerWin->parent, pFirstMapped, VTMap); (*pScreen->HandleExposures) (pLayerWin->parent); + if (pScreen->PostValidateTree) + (*pScreen->PostValidateTree) (pLayerWin->parent, pFirstMapped, + VTMap); } - if (anyMarked && pScreen->PostValidateTree) - (*pScreen->PostValidateTree) (pLayerWin->parent, pFirstMapped, - VTMap); WindowsRestructured(); } } @@ -2754,9 +2754,9 @@ UnmapWindow(WindowPtr pWin, Bool fromConfigure) if (!fromConfigure) { (*pScreen->ValidateTree) (pLayerWin->parent, pWin, VTUnmap); (*pScreen->HandleExposures) (pLayerWin->parent); + if (pScreen->PostValidateTree) + (*pScreen->PostValidateTree) (pLayerWin->parent, pWin, VTUnmap); } - if (!fromConfigure && pScreen->PostValidateTree) - (*pScreen->PostValidateTree) (pLayerWin->parent, pWin, VTUnmap); } if (wasRealized && !fromConfigure) { WindowsRestructured(); @@ -2824,9 +2824,10 @@ UnmapSubwindows(WindowPtr pWin) } (*pScreen->ValidateTree) (pLayerWin->parent, pHead, VTUnmap); (*pScreen->HandleExposures) (pLayerWin->parent); + if (pScreen->PostValidateTree) + (*pScreen->PostValidateTree) (pLayerWin->parent, pHead, + VTUnmap); } - if (anyMarked && pScreen->PostValidateTree) - (*pScreen->PostValidateTree) (pLayerWin->parent, pHead, VTUnmap); } if (wasRealized) { WindowsRestructured(); @@ -3592,15 +3593,12 @@ SetRootClip(ScreenPtr pScreen, Bool enable) anyMarked = TRUE; } - if (anyMarked) + if (anyMarked) { (*pScreen->ValidateTree) (pWin, NullWindow, VTOther); - } - - if (WasViewable) { - if (anyMarked) (*pScreen->HandleExposures) (pWin); - if (anyMarked && pScreen->PostValidateTree) - (*pScreen->PostValidateTree) (pWin, NullWindow, VTOther); + if (pScreen->PostValidateTree) + (*pScreen->PostValidateTree) (pWin, NullWindow, VTOther); + } } if (pWin->realized) WindowsRestructured(); diff --git a/mi/mioverlay.c b/mi/mioverlay.c index 2ad6bc082..eb8dda133 100644 --- a/mi/mioverlay.c +++ b/mi/mioverlay.c @@ -1464,11 +1464,7 @@ miOverlaySetShape(WindowPtr pWin, int kind) if (WasViewable) { (*pScreen->MarkOverlappedWindows) (pWin, pWin, NULL); - (*pScreen->ValidateTree) (pWin->parent, NullWindow, VTOther); - } - - if (WasViewable) { (*pScreen->HandleExposures) (pWin->parent); if (pScreen->PostValidateTree) (*pScreen->PostValidateTree) (pWin->parent, NullWindow, diff --git a/mi/miwindow.c b/mi/miwindow.c index cfe085a4c..0cf50465a 100644 --- a/mi/miwindow.c +++ b/mi/miwindow.c @@ -292,9 +292,9 @@ miMoveWindow(WindowPtr pWin, int x, int y, WindowPtr pNextSib, VTKind kind) RegionDestroy(oldRegion); /* XXX need to retile border if ParentRelative origin */ (*pScreen->HandleExposures) (pLayerWin->parent); + if (pScreen->PostValidateTree) + (*pScreen->PostValidateTree) (pLayerWin->parent, NULL, kind); } - if (anyMarked && pScreen->PostValidateTree) - (*pScreen->PostValidateTree) (pLayerWin->parent, NullWindow, kind); } if (pWin->realized) WindowsRestructured(); @@ -607,11 +607,12 @@ miResizeWindow(WindowPtr pWin, int x, int y, unsigned int w, unsigned int h, RegionDestroy(pRegion); if (destClip) RegionDestroy(destClip); - if (anyMarked) + if (anyMarked) { (*pScreen->HandleExposures) (pLayerWin->parent); - if (anyMarked && pScreen->PostValidateTree) - (*pScreen->PostValidateTree) (pLayerWin->parent, pFirstChange, - VTOther); + if (pScreen->PostValidateTree) + (*pScreen->PostValidateTree) (pLayerWin->parent, pFirstChange, + VTOther); + } } if (pWin->realized) WindowsRestructured(); @@ -663,17 +664,14 @@ miSetShape(WindowPtr pWin, int kind) if (WasViewable) { anyMarked |= (*pScreen->MarkOverlappedWindows) (pWin, pWin, NULL); - if (anyMarked) + if (anyMarked) { (*pScreen->ValidateTree) (pLayerWin->parent, NullWindow, VTOther); - } - - if (WasViewable) { - if (anyMarked) (*pScreen->HandleExposures) (pLayerWin->parent); - if (anyMarked && pScreen->PostValidateTree) - (*pScreen->PostValidateTree) (pLayerWin->parent, NullWindow, - VTOther); + if (pScreen->PostValidateTree) + (*pScreen->PostValidateTree) (pLayerWin->parent, NULL, + VTOther); + } } } if (pWin->realized) @@ -725,10 +723,10 @@ miChangeBorderWidth(WindowPtr pWin, unsigned int width) if (anyMarked) { (*pScreen->ValidateTree) (pLayerWin->parent, pLayerWin, VTOther); (*pScreen->HandleExposures) (pLayerWin->parent); + if (pScreen->PostValidateTree) + (*pScreen->PostValidateTree) (pLayerWin->parent, pLayerWin, + VTOther); } - if (anyMarked && pScreen->PostValidateTree) - (*pScreen->PostValidateTree) (pLayerWin->parent, pLayerWin, - VTOther); } if (pWin->realized) WindowsRestructured();