[Libreoffice-commits] core.git: include/svx sd/source svx/source

Miklos Vajna vmiklos at collabora.co.uk
Tue Oct 13 01:48:16 PDT 2015


 include/svx/svdpagv.hxx            |    2 +-
 sd/source/ui/inc/DrawViewShell.hxx |    1 +
 sd/source/ui/view/drviews1.cxx     |    3 +--
 sd/source/ui/view/sdwindow.cxx     |    4 ++++
 svx/source/svdraw/svdpagv.cxx      |    5 ++---
 5 files changed, 9 insertions(+), 6 deletions(-)

New commits:
commit 1631fa9a722553da1ebe0650a65e859862c4405d
Author: Miklos Vajna <vmiklos at collabora.co.uk>
Date:   Tue Oct 13 10:46:59 2015 +0200

    tdf#95002 sd tiled rendering: fix handling of images on page switch
    
    It turns out a full invalidation is still needed to trigger the loading
    of graphics on the new page, so instead of not invalidating just don't
    emit the notification about it during page switch.
    
    Change-Id: Ic99a3d4e268b3db61cf09c78ed0f310c9d365867

diff --git a/include/svx/svdpagv.hxx b/include/svx/svdpagv.hxx
index 04b18f9..48c5b5b 100644
--- a/include/svx/svdpagv.hxx
+++ b/include/svx/svdpagv.hxx
@@ -221,7 +221,7 @@ public:
     const SetOfByte& GetLockedLayers() const { return aLayerLock; }
 
     const SdrHelpLineList& GetHelpLines() const { return aHelpLines; }
-    void SetHelpLines(const SdrHelpLineList& rHLL, bool bInvalidate = true);
+    void SetHelpLines(const SdrHelpLineList& rHLL);
     //void SetHelpLinePos(sal_uInt16 nNum, const Point& rNewPos);
     void SetHelpLine(sal_uInt16 nNum, const SdrHelpLine& rNewHelpLine);
     void DeleteHelpLine(sal_uInt16 nNum);
diff --git a/sd/source/ui/inc/DrawViewShell.hxx b/sd/source/ui/inc/DrawViewShell.hxx
index 1854d65..971c5dc 100644
--- a/sd/source/ui/inc/DrawViewShell.hxx
+++ b/sd/source/ui/inc/DrawViewShell.hxx
@@ -387,6 +387,7 @@ public:
 
     const Color& GetAppBackgroundColor() const { return mnAppBackgroundColor; }
     void SetAppBackgroundColor( Color nNewColor )  { mnAppBackgroundColor = nNewColor; }
+    bool IsInSwitchPage() { return mbIsInSwitchPage; }
 
     //move this method to ViewShell.
     //void  NotifyAccUpdate();
diff --git a/sd/source/ui/view/drviews1.cxx b/sd/source/ui/view/drviews1.cxx
index 0ff2d8b..cf146ae 100644
--- a/sd/source/ui/view/drviews1.cxx
+++ b/sd/source/ui/view/drviews1.cxx
@@ -992,8 +992,7 @@ bool DrawViewShell::SwitchPage(sal_uInt16 nSelectedPage)
                 }
                 else
                 {
-                    bool bInvalidate = !comphelper::LibreOfficeKit::isActive();
-                    pNewPageView->SetHelpLines( mpFrameView->GetStandardHelpLines(), bInvalidate );
+                    pNewPageView->SetHelpLines( mpFrameView->GetStandardHelpLines() );
                 }
             }
 
diff --git a/sd/source/ui/view/sdwindow.cxx b/sd/source/ui/view/sdwindow.cxx
index 83b65bd..2f53307 100644
--- a/sd/source/ui/view/sdwindow.cxx
+++ b/sd/source/ui/view/sdwindow.cxx
@@ -1006,6 +1006,10 @@ Selection Window::GetSurroundingTextSelection() const
 
 void Window::LogicInvalidate(const Rectangle* pRectangle)
 {
+    DrawViewShell* pDrawViewShell = dynamic_cast<DrawViewShell*>(mpViewShell);
+    if (pDrawViewShell && pDrawViewShell->IsInSwitchPage())
+        return;
+
     OString sRectangle;
     if (!pRectangle)
         sRectangle = "EMPTY";
diff --git a/svx/source/svdraw/svdpagv.cxx b/svx/source/svdraw/svdpagv.cxx
index bb7c921..0037771 100644
--- a/svx/source/svdraw/svdpagv.cxx
+++ b/svx/source/svdraw/svdpagv.cxx
@@ -741,11 +741,10 @@ void SdrPageView::ImpInvalidateHelpLineArea(sal_uInt16 nNum) const
     }
 }
 
-void SdrPageView::SetHelpLines(const SdrHelpLineList& rHLL, bool bInvalidate)
+void SdrPageView::SetHelpLines(const SdrHelpLineList& rHLL)
 {
     aHelpLines=rHLL;
-    if (bInvalidate)
-        InvalidateAllWin();
+    InvalidateAllWin();
 }
 
 void SdrPageView::SetHelpLine(sal_uInt16 nNum, const SdrHelpLine& rNewHelpLine)


More information about the Libreoffice-commits mailing list