X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d66d050088ee2012542a2d2607b5329ff5f3a491..deb0c40261cfc5e4ac3f84782da48eaad40cc5d2:/src/msw/window.cpp diff --git a/src/msw/window.cpp b/src/msw/window.cpp index 7a81ded775..f2b47d0fa4 100644 --- a/src/msw/window.cpp +++ b/src/msw/window.cpp @@ -1987,6 +1987,11 @@ void wxWindowMSW::DoMoveWindow(int x, int y, int width, int height) #if USE_DEFERRED_SIZING m_pendingPosition = wxPoint(x, y); m_pendingSize = wxSize(width, height); + } + else // window was moved immediately, without deferring it + { + m_pendingPosition = wxDefaultPosition; + m_pendingSize = wxDefaultSize; #endif // USE_DEFERRED_SIZING } } @@ -4262,13 +4267,14 @@ bool wxWindowMSW::HandlePower(WXWPARAM WXUNUSED_IN_WINCE(wParam), bool wxWindowMSW::IsDoubleBuffered() const { - const wxWindowMSW *wnd = this; - do + for ( const wxWindowMSW *win = this; win; win = win->GetParent() ) { - if ( wxHasWindowExStyle(wnd, WS_EX_COMPOSITED) ) + if ( wxHasWindowExStyle(win, WS_EX_COMPOSITED) ) return true; - wnd = wnd->GetParent(); - } while ( wnd && !wnd->IsTopLevel() ); + + if ( win->IsTopLevel() ) + break; + } return false; }