Blame SOURCES/0087-Removed-some-whole-page-invalidations-in-impress.patch

f325b2
From 41fe248a52c4685a4f59dd18bb9885f3576fd0ed Mon Sep 17 00:00:00 2001
f325b2
From: Mihai Varga <mihai.varga@collabora.com>
f325b2
Date: Fri, 31 Jul 2015 18:24:33 +0300
f325b2
Subject: [PATCH 087/398] Removed some whole page invalidations in impress
f325b2
f325b2
1. For tiled rendering, don't invalidate the whole page when hiding it
f325b2
2. Don't invalidate when showing a page because we've just hidden the
f325b2
previous one
f325b2
3. No need for invalidation when setting visible layers
f325b2
f325b2
Change-Id: I858401b22c95093c58ec00896fe92b766fddb6de
f325b2
Reviewed-on: https://gerrit.libreoffice.org/17452
f325b2
Tested-by: Jenkins <ci@libreoffice.org>
f325b2
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
f325b2
(cherry picked from commit a381d16d23d0efb678e9e410db3ad23313693640)
f325b2
---
f325b2
 include/svx/svdpagv.hxx       | 2 +-
f325b2
 svx/source/svdraw/svdpagv.cxx | 6 ++++--
f325b2
 2 files changed, 5 insertions(+), 3 deletions(-)
f325b2
f325b2
diff --git a/include/svx/svdpagv.hxx b/include/svx/svdpagv.hxx
f325b2
index 8bf305f6be60..f28e3e7cb79d 100644
f325b2
--- a/include/svx/svdpagv.hxx
f325b2
+++ b/include/svx/svdpagv.hxx
f325b2
@@ -216,7 +216,7 @@ public:
f325b2
     void PagePosToLogic(Point& rPnt) const { rPnt+=aPgOrg; }
f325b2
     void PagePosToLogic(Rectangle& rRect) const { rRect.Move(aPgOrg.X(),aPgOrg.Y()); }
f325b2
 
f325b2
-    void SetVisibleLayers(const SetOfByte& rSet) { aLayerVisi=rSet; InvalidateAllWin(); }
f325b2
+    void SetVisibleLayers(const SetOfByte& rSet) { aLayerVisi=rSet; }
f325b2
     const SetOfByte& GetVisibleLayers() const { return aLayerVisi; }
f325b2
     void SetPrintableLayers(const SetOfByte& rSet) { aLayerPrn=rSet; }
f325b2
     const SetOfByte& GetPrintableLayers() const { return aLayerPrn;  }
f325b2
diff --git a/svx/source/svdraw/svdpagv.cxx b/svx/source/svdraw/svdpagv.cxx
f325b2
index e8caa445fe9c..9c74d433e1c9 100644
f325b2
--- a/svx/source/svdraw/svdpagv.cxx
f325b2
+++ b/svx/source/svdraw/svdpagv.cxx
f325b2
@@ -229,7 +229,6 @@ void SdrPageView::Show()
f325b2
     if(!IsVisible())
f325b2
     {
f325b2
         mbVisible = true;
f325b2
-        InvalidateAllWin();
f325b2
 
f325b2
         for(sal_uInt32 a(0L); a < GetView().PaintWindowCount(); a++)
f325b2
         {
f325b2
@@ -242,7 +241,10 @@ void SdrPageView::Hide()
f325b2
 {
f325b2
     if(IsVisible())
f325b2
     {
f325b2
-        InvalidateAllWin();
f325b2
+        if (!GetView().GetModel()->isTiledRendering())
f325b2
+        {
f325b2
+            InvalidateAllWin();
f325b2
+        }
f325b2
         mbVisible = false;
f325b2
         ClearPageWindows();
f325b2
     }
f325b2
-- 
f325b2
2.12.0
f325b2