Blame SOURCES/0201-tdf-95002-sd-tiled-rendering-fix-handling-of-images-.patch

135360
From 07a7cf95d91cbd776490543762902136280994fe Mon Sep 17 00:00:00 2001
135360
From: Miklos Vajna <vmiklos@collabora.co.uk>
135360
Date: Tue, 13 Oct 2015 10:46:59 +0200
135360
Subject: [PATCH 201/398] tdf#95002 sd tiled rendering: fix handling of images
135360
 on page switch
135360
135360
It turns out a full invalidation is still needed to trigger the loading
135360
of graphics on the new page, so instead of not invalidating just don't
135360
emit the notification about it during page switch.
135360
135360
(cherry picked from commit 1631fa9a722553da1ebe0650a65e859862c4405d)
135360
135360
Change-Id: Ic99a3d4e268b3db61cf09c78ed0f310c9d365867
135360
---
135360
 include/svx/svdpagv.hxx            | 2 +-
135360
 sd/source/ui/inc/DrawViewShell.hxx | 2 ++
135360
 sd/source/ui/view/drviews1.cxx     | 3 +--
135360
 sd/source/ui/view/sdwindow.cxx     | 4 ++++
135360
 svx/source/svdraw/svdpagv.cxx      | 5 ++---
135360
 5 files changed, 10 insertions(+), 6 deletions(-)
135360
135360
diff --git a/include/svx/svdpagv.hxx b/include/svx/svdpagv.hxx
135360
index 3b890c13cd70..f28e3e7cb79d 100644
135360
--- a/include/svx/svdpagv.hxx
135360
+++ b/include/svx/svdpagv.hxx
135360
@@ -224,7 +224,7 @@ public:
135360
     const SetOfByte& GetLockedLayers() const { return aLayerLock; }
135360
 
135360
     const SdrHelpLineList& GetHelpLines() const { return aHelpLines; }
135360
-    void SetHelpLines(const SdrHelpLineList& rHLL, bool bInvalidate = true);
135360
+    void SetHelpLines(const SdrHelpLineList& rHLL);
135360
     //void SetHelpLinePos(sal_uInt16 nNum, const Point& rNewPos);
135360
     void SetHelpLine(sal_uInt16 nNum, const SdrHelpLine& rNewHelpLine);
135360
     void DeleteHelpLine(sal_uInt16 nNum);
135360
diff --git a/sd/source/ui/inc/DrawViewShell.hxx b/sd/source/ui/inc/DrawViewShell.hxx
135360
index 405e7af90876..cba478b8af7e 100644
135360
--- a/sd/source/ui/inc/DrawViewShell.hxx
135360
+++ b/sd/source/ui/inc/DrawViewShell.hxx
135360
@@ -376,6 +376,8 @@ public:
135360
 
135360
     OUString GetSidebarContextName() const;
135360
 
135360
+    bool IsInSwitchPage() { return mbIsInSwitchPage; }
135360
+
135360
     //move this method to ViewShell.
135360
     //void  NotifyAccUpdate();
135360
 protected:
135360
diff --git a/sd/source/ui/view/drviews1.cxx b/sd/source/ui/view/drviews1.cxx
135360
index c92cfde79262..3b749419e860 100644
135360
--- a/sd/source/ui/view/drviews1.cxx
135360
+++ b/sd/source/ui/view/drviews1.cxx
135360
@@ -986,8 +986,7 @@ bool DrawViewShell::SwitchPage(sal_uInt16 nSelectedPage)
135360
                 }
135360
                 else
135360
                 {
135360
-                    bool bInvalidate = !comphelper::LibreOfficeKit::isActive();
135360
-                    pNewPageView->SetHelpLines( mpFrameView->GetStandardHelpLines(), bInvalidate );
135360
+                    pNewPageView->SetHelpLines( mpFrameView->GetStandardHelpLines() );
135360
                 }
135360
             }
135360
 
135360
diff --git a/sd/source/ui/view/sdwindow.cxx b/sd/source/ui/view/sdwindow.cxx
135360
index c9c4bfe15b61..7149cf99b694 100644
135360
--- a/sd/source/ui/view/sdwindow.cxx
135360
+++ b/sd/source/ui/view/sdwindow.cxx
135360
@@ -1006,6 +1006,10 @@ Selection Window::GetSurroundingTextSelection() const
135360
 
135360
 void Window::LogicInvalidate(const Rectangle* pRectangle)
135360
 {
135360
+    DrawViewShell* pDrawViewShell = dynamic_cast<DrawViewShell*>(mpViewShell);
135360
+    if (pDrawViewShell && pDrawViewShell->IsInSwitchPage())
135360
+        return;
135360
+
135360
     OString sRectangle;
135360
     if (!pRectangle)
135360
         sRectangle = "EMPTY";
135360
diff --git a/svx/source/svdraw/svdpagv.cxx b/svx/source/svdraw/svdpagv.cxx
135360
index 47fa8f52b471..9c74d433e1c9 100644
135360
--- a/svx/source/svdraw/svdpagv.cxx
135360
+++ b/svx/source/svdraw/svdpagv.cxx
135360
@@ -741,11 +741,10 @@ void SdrPageView::ImpInvalidateHelpLineArea(sal_uInt16 nNum) const
135360
     }
135360
 }
135360
 
135360
-void SdrPageView::SetHelpLines(const SdrHelpLineList& rHLL, bool bInvalidate)
135360
+void SdrPageView::SetHelpLines(const SdrHelpLineList& rHLL)
135360
 {
135360
     aHelpLines=rHLL;
135360
-    if (bInvalidate)
135360
-        InvalidateAllWin();
135360
+    InvalidateAllWin();
135360
 }
135360
 
135360
 void SdrPageView::SetHelpLine(sal_uInt16 nNum, const SdrHelpLine& rNewHelpLine)
135360
-- 
135360
2.12.0
135360