summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.co.uk>2015-10-13 10:46:59 +0200
committerMiklos Vajna <vmiklos@collabora.co.uk>2015-10-13 10:47:00 +0200
commit1631fa9a722553da1ebe0650a65e859862c4405d (patch)
treee1503c55b8f9822d7fe19ebdde83f495b23f7de9
parent7000c07834af2231145519ae6fd81c6297bf9004 (diff)
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
-rw-r--r--include/svx/svdpagv.hxx2
-rw-r--r--sd/source/ui/inc/DrawViewShell.hxx1
-rw-r--r--sd/source/ui/view/drviews1.cxx3
-rw-r--r--sd/source/ui/view/sdwindow.cxx4
-rw-r--r--svx/source/svdraw/svdpagv.cxx5
5 files changed, 9 insertions, 6 deletions
diff --git a/include/svx/svdpagv.hxx b/include/svx/svdpagv.hxx
index 04b18f97b690..48c5b5bae554 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 1854d6519239..971c5dcd2274 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 0ff2d8bcad28..cf146aef2fd8 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 83b65bd0ca48..2f5330726a4d 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 bb7c9212c21b..003777192ade 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)