[Libreoffice-commits] core.git: vcl/source
Michael Meeks
michael.meeks at collabora.com
Mon Sep 14 10:00:22 PDT 2015
vcl/source/window/paint.cxx | 8 ++++++++
1 file changed, 8 insertions(+)
New commits:
commit 4a55670e2453cdb9895f51bbd4051f7004d768c5
Author: Michael Meeks <michael.meeks at collabora.com>
Date: Mon Sep 14 18:09:25 2015 +0100
tdf#94213 - defer glFlushing until we've re-rendered after a re-size.
Avoids a rather horrible flickering problem in GL mode.
Change-Id: Id205f28de209dc2e4fb6d6fa48b86ee5bd38835d
diff --git a/vcl/source/window/paint.cxx b/vcl/source/window/paint.cxx
index 74c74db..429711e 100644
--- a/vcl/source/window/paint.cxx
+++ b/vcl/source/window/paint.cxx
@@ -651,6 +651,8 @@ IMPL_LINK_NOARG_TYPED(Window, ImplHandlePaintHdl, Idle *, void)
return;
}
+ BeginPaint();
+
// save paint events until resizing or initial sizing done
if (!ImplDoTiledRendering() && mpWindowImpl->mbFrame &&
(mpWindowImpl->mpFrameData->maResizeIdle.IsActive() ||
@@ -662,12 +664,16 @@ IMPL_LINK_NOARG_TYPED(Window, ImplHandlePaintHdl, Idle *, void)
{
ImplCallOverlapPaint();
}
+
+ EndPaint();
}
IMPL_LINK_NOARG_TYPED(Window, ImplHandleResizeTimerHdl, Idle *, void)
{
if( mpWindowImpl->mbReallyVisible )
{
+ BeginPaint();
+
ImplCallResize();
if( ImplDoTiledRendering() )
{
@@ -678,6 +684,8 @@ IMPL_LINK_NOARG_TYPED(Window, ImplHandleResizeTimerHdl, Idle *, void)
mpWindowImpl->mpFrameData->maPaintIdle.Stop();
mpWindowImpl->mpFrameData->maPaintIdle.GetIdleHdl().Call( NULL );
}
+
+ EndPaint();
}
}
More information about the Libreoffice-commits
mailing list