is_reorder_pending && !windows_hidden) { WindowPtr newPrevW; RootlessWindowRec *newPrev; RootlessFrameID newPrevID; @@ -1662,7 +1662,10 @@ RootlessOrderAllWindows (void) { int i; WindowPtr pWin;
After doing an audit of the Tiger and Leopard X11 sources for viewable, realized, and windows_hidden, I think I have a fix for the white-rectangle bug. I've tested it and can't get it to trigger any of the ways that I was able to trigger it before (that doesn't mean it's completely gone... just I can't trigger it any more). I'm going to start building 2.3.2_rc4 to get this out into the masses. --Jeremy diff --git a/miext/rootless/rootlessWindow.c b/miext/rootless/ rootlessWindow.c index 74c5dbb..da02fe0 100644 --- a/miext/rootless/rootlessWindow.c +++ b/miext/rootless/rootlessWindow.c @@ -632,7 +632,7 @@ RootlessReorderWindow(WindowPtr pWin) { RootlessWindowRec *winRec = WINREC(pWin); - if (winRec != NULL && !winRec->is_reorder_pending) { + if (pWin->realized && winRec != NULL && !winRec- - + + if (windows_hidden) + return; + RL_DEBUG_MSG("RootlessOrderAllWindows() "); for (i = 0; i < screenInfo.numScreens; i++) { if (screenInfo.screens[i] == NULL) continue; On Dec 10, 2008, at 07:13, Richard Tobin wrote:
In RootlessRepositionWindow() in rootlessWindow.c, change the call to RootlessReorderWindow() so that it only happens if the window is realized:
if(pWin->realized) RootlessReorderWindow(pWin);
I don't know if this is the right way to do it, but it eliminates the white rectangle problem for me.
-- Richard
-- The University of Edinburgh is a charitable body, registered in Scotland, with registration number SC005336.
_______________________________________________ Xquartz-dev mailing list Xquartz-dev@lists.macosforge.org http://lists.macosforge.org/mailman/listinfo.cgi/xquartz-dev