[Libreoffice-commits] core.git: Branch 'libreoffice-5-0' - 3 commits - sw/source vcl/source
Miklos Vajna
vmiklos at collabora.co.uk
Tue Jul 7 01:14:54 PDT 2015
sw/source/core/layout/layact.cxx | 3 ---
sw/source/core/view/viewsh.cxx | 4 ++--
vcl/source/window/window.cxx | 3 +--
3 files changed, 3 insertions(+), 7 deletions(-)
New commits:
commit 278404a3fae926aeadcf8065b4a5faa07b8c15e2
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Jul 6 17:49:35 2015 +0200
tdf#92577 sw rendercontext: paint transparent from controls conditionally
Regression from commit beb4aa21d61f0d66392d596be86fb57b4b167239
(SwViewShell::ImplEndAction: avoid direct paint, 2015-06-29), the
problem was that the lcl_PaintTransparentFormControls() call performs
direct paint, so it should be called only in case we don't do an async
paint via invalidate.
As expected, this call is no longer needed for the original i#107365
bug document in case SwViewShell::Paint() will be called by the main
loop shortly.
Change-Id: Ia27c551ed838d610f972f20abbb4ae9f0e1241b6
(cherry picked from commit 2b26c1796d0a05f47cfb01d79ee4f69344efbbb2)
diff --git a/sw/source/core/view/viewsh.cxx b/sw/source/core/view/viewsh.cxx
index 9b96a58..a019fae 100644
--- a/sw/source/core/view/viewsh.cxx
+++ b/sw/source/core/view/viewsh.cxx
@@ -407,8 +407,8 @@ void SwViewShell::ImplEndAction( const bool bIdleEnd )
{
InvalidateWindows(aRect.SVRect());
}
-
- lcl_PaintTransparentFormControls(*this, aRect); // i#107365
+ else
+ lcl_PaintTransparentFormControls(*this, aRect); // i#107365
}
pVout.disposeAndClear();
commit fabf8a4dfebe19abcb5f995c20d8750f95d89a9a
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Jul 6 12:01:02 2015 +0200
SwLayAction::FormatLayout: avoid direct DrawRect()
Regression from commit 1d9e837698baab795efee6cc8b0e289528d5cac6 (Use
GetBoundRect() instead of Frm() in layout., 2011-04-29), this causes
problems for double-buffered rendering and also seems to be pointless,
as just above we already added the rectangle to the repaint area.
Change-Id: I3dc67143e8332ab941a683414ee318dbef13de88
(cherry picked from commit e47db97d2ced9178456eebaece11118158dce406)
diff --git a/sw/source/core/layout/layact.cxx b/sw/source/core/layout/layact.cxx
index 307a038..d1c5cd4 100644
--- a/sw/source/core/layout/layact.cxx
+++ b/sw/source/core/layout/layact.cxx
@@ -1335,9 +1335,6 @@ bool SwLayAction::FormatLayout( OutputDevice *pRenderContext, SwLayoutFrm *pLay,
if(aSpaceToPrevPage.Height() > 0 && aSpaceToPrevPage.Width() > 0)
pImp->GetShell()->AddPaintRect( aSpaceToPrevPage );
- if (pSh)
- pRenderContext->DrawRect( aSpaceToPrevPage.SVRect() );
-
// left
aSpaceToPrevPage = aPageRect;
aSpaceToPrevPage.Left( aSpaceToPrevPage.Left() - nHalfDocBorder );
commit f3596e705d072f2d968cd4cc75f8aeecf4048552
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date: Mon Jul 6 11:17:06 2015 +0200
Revert "vcl::Window::SupportsDoubleBuffering: respect VCL_DOUBLEBUFFERING_FORCE_ENABLE"
This reverts commit 7df3879d3f6222b840724ae748bdf8bf6a7af9f1. It's not
necessary since commit f16d82ea8f1d2815faa978a4481c6b3c9c8705f8 (make it
possible to force enable double buffering for all widgets, 2015-06-03).
(cherry picked from commit 158654894091db2689ddf83d2bb2104e9a408f29)
diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx
index 8afd412..6e3e60e 100644
--- a/vcl/source/window/window.cxx
+++ b/vcl/source/window/window.cxx
@@ -3943,8 +3943,7 @@ vcl::RenderSettings& Window::GetRenderSettings()
bool Window::SupportsDoubleBuffering() const
{
- static bool bDoubleBuffering = getenv("VCL_DOUBLEBUFFERING_FORCE_ENABLE");
- return mpWindowImpl->mbDoubleBuffering || bDoubleBuffering;
+ return mpWindowImpl->mbDoubleBuffering;
}
void Window::SetDoubleBuffering(bool bDoubleBuffering)
More information about the Libreoffice-commits
mailing list