X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e42eaa04de3316a6ff7c7cce485cf13a829b323e..dd107c50be43e8d4dbdba20df162faf119a3781c:/src/mac/window.cpp diff --git a/src/mac/window.cpp b/src/mac/window.cpp index f44503d555..95e1077a9b 100644 --- a/src/mac/window.cpp +++ b/src/mac/window.cpp @@ -1872,7 +1872,7 @@ void wxWindow::MacRedraw( RgnHandle updatergn , long time) RGBBackColor( &m_backgroundColour.GetPixel()) ; } // subtract all non transparent children from updatergn - + RgnHandle childarea = NewRgn() ; for (wxNode *node = GetChildren().First(); node; node = node->Next()) { @@ -1880,7 +1880,7 @@ void wxWindow::MacRedraw( RgnHandle updatergn , long time) // eventually test for transparent windows if ( child->GetMacRootWindow() == window && child->IsShown() ) { - if ( !child->IsKindOf( CLASSINFO( wxControl ) ) && ((wxControl*)child)->GetMacControl() ) + if ( child->GetBackgroundColour() != m_backgroundColour && !child->IsKindOf( CLASSINFO( wxControl ) ) && ((wxControl*)child)->GetMacControl() ) { SetRectRgn( childarea , child->m_x , child->m_y , child->m_x + child->m_width , child->m_y + child->m_height ) ; DiffRgn( ownUpdateRgn , childarea , ownUpdateRgn ) ;