summaryrefslogtreecommitdiff
path: root/framework
diff options
context:
space:
mode:
authorHerbert Dürr <hdu@apache.org>2012-12-19 08:12:31 +0000
committerCaolán McNamara <caolanm@redhat.com>2013-04-05 10:14:04 +0100
commitb130133ad2e5b09ccd9a3ac15348fd8d39a8fef8 (patch)
tree5bbb3df835b5916e7e20b76e057045222867ca66 /framework
parente1f6dac6893e0ad9e1b1f03a3b882cf1e9a08d32 (diff)
Resolves: #i121503# fix resize/paint race in the backing window
(cherry picked from commit 9d578cebcd9d1e1c16c04cbefc5de2ab511ea335) Conflicts: framework/source/services/backingwindow.cxx Change-Id: Ic5e590465e19b02b6a9b426072818cea5bb3f912
Diffstat (limited to 'framework')
-rw-r--r--framework/source/services/backingwindow.cxx5
1 files changed, 5 insertions, 0 deletions
diff --git a/framework/source/services/backingwindow.cxx b/framework/source/services/backingwindow.cxx
index 5e2ca264767a..652b6c6601cf 100644
--- a/framework/source/services/backingwindow.cxx
+++ b/framework/source/services/backingwindow.cxx
@@ -661,6 +661,8 @@ void BackingWindow::layoutButton(
void BackingWindow::Paint( const Rectangle& )
{
+ Resize();
+
Wallpaper aBack( svtools::ColorConfig().GetColorValue(::svtools::APPBACKGROUND).nColor );
Region aClip( Rectangle( Point( 0, 0 ), GetOutputSizePixel() ) );
Rectangle aBmpRect(maControlRect);
@@ -849,6 +851,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_NOARG(BackingWindow, ToolboxHdl)