Kaydet (Commit) 1631fa9a authored tarafından Miklos Vajna's avatar Miklos Vajna

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
üst 7000c078
......@@ -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);
......
......@@ -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();
......
......@@ -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() );
}
}
......
......@@ -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";
......
......@@ -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)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment