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 )