Author: hdu
Date: Wed Dec 19 09:12:31 2012
New Revision: 1423804

URL: http://svn.apache.org/viewvc?rev=1423804&view=rev
Log:
#i121503# fix resize/paint race in the backing window

Modified:
    openoffice/trunk/main/framework/source/services/backingwindow.cxx

Modified: openoffice/trunk/main/framework/source/services/backingwindow.cxx
URL: 
http://svn.apache.org/viewvc/openoffice/trunk/main/framework/source/services/backingwindow.cxx?rev=1423804&r1=1423803&r2=1423804&view=diff
==============================================================================
--- openoffice/trunk/main/framework/source/services/backingwindow.cxx (original)
+++ openoffice/trunk/main/framework/source/services/backingwindow.cxx Wed Dec 
19 09:12:31 2012
@@ -697,6 +697,8 @@ void BackingWindow::layoutButton(
 
 void BackingWindow::Paint( const Rectangle& )
 {
+       Resize();
+       
     Wallpaper aBack( GetSettings().GetStyleSettings().GetWorkspaceGradient() );
     Region aClip( Rectangle( Point( 0, 0 ), GetOutputSizePixel() ) );
     Rectangle aBmpRect(maControlRect);
@@ -884,6 +886,9 @@ void BackingWindow::Resize()
     nYPos += nB2Delta - nDiff;
     maOpenButton.SetPosSizePixel( Point( maControlRect.Left() + mnBtnPos, 
nYPos ), Size( mnTextColumnWidth[0], maButtonImageSize.Height() ) );
     maTemplateButton.SetPosSizePixel( Point( maControlRect.Left() + mnBtnPos + 
mnColumnWidth[0], nYPos ), Size( mnTextColumnWidth[1], 
maButtonImageSize.Height() ) );
+
+       if( !IsInPaint())
+               Invalidate();
 }
 
 IMPL_LINK( BackingWindow, ToolboxHdl, void*, EMPTYARG )


Reply via email to