From 03ab8f11d25b0ca39a3b37b5350bca4c1028768e Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Thu, 18 Sep 2008 12:17:05 -0700 Subject: [PATCH] When resizing a window with redirected descendents, don't expose them Bit/window gravity computations need to recompute exposures to manage the bits which are saved by gravity during the resize computation. That's easy for non-redirected windows where the bits are all within the parent's pixmap. For redirected windows, we don't need to deal with this at all, so just skip the whole re-computation adventure. Signed-off-by: Keith Packard --- mi/miwindow.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/mi/miwindow.c b/mi/miwindow.c index e3360d631..8c4b6d08e 100644 --- a/mi/miwindow.c +++ b/mi/miwindow.c @@ -342,6 +342,15 @@ miRecomputeExposures ( if (pWin->valdata) { +#ifdef COMPOSITE + /* + * Redirected windows are not affected by parent window + * gravity manipulations, so don't recompute their + * exposed areas here. + */ + if (pWin->redirectDraw != RedirectDrawNone) + return WT_DONTWALKCHILDREN; +#endif pScreen = pWin->drawable.pScreen; /* * compute exposed regions of this window