You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by hd...@apache.org on 2012/12/19 10:12:32 UTC

svn commit: r1423804 - /openoffice/trunk/main/framework/source/services/backingwindow.cxx

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 )