"Dan Kegel" <[EMAIL PROTECTED]> wrote: > The problem in Wine is that the bottom window ends up blank. > The sequence appears to be: erase bottom window, draw right values > for bottom window client areas but not frames, erase bottom window. > On Windows, it seems to continue after that with: > draw right values for client areas again, then draw frames. > Those last two bits are missing in Wine.
Accidentally, I'm debugging painting bugs in one of my apps, but your case seems to be a different one. Attached patch makes your app happy, but since I'm not sure that this is a right fix, I'm not sending it to wine-patches. -- Dmitry.
--- cvs/hq/wine/dlls/x11drv/winpos.c Thu Jan 9 20:46:14 2003 +++ wine/dlls/x11drv/winpos.c Mon Feb 3 13:24:42 2003 @@ -990,6 +990,8 @@ if (winpos->flags & SWP_SHOWWINDOW) { set_visible_style( winpos->hwnd, TRUE ); + RedrawWindow( winpos->hwnd, NULL, 0, RDW_INVALIDATE | RDW_FRAME | + RDW_ERASE | RDW_NOINTERNALPAINT | RDW_ALLCHILDREN ); } else if ((wndPtr->dwStyle & WS_VISIBLE) && IsRectEmpty( &oldWindowRect ) && !IsRectEmpty( &newWindowRect ))