sc/source/ui/view/gridwin4.cxx | 8 +++++++- sd/source/ui/view/sdwindow.cxx | 7 ++++++- vcl/source/window/paint.cxx | 9 --------- 3 files changed, 13 insertions(+), 11 deletions(-)
New commits: commit df79e02bc2eae3dfa8129405b94393dfec1ebd20 Author: Miklos Vajna <vmik...@collabora.co.uk> Date: Thu Apr 2 15:10:50 2015 +0200 vcl tiled rendering: don't do anything with disabled mapmode and mm100 mapunit Turns out Impress wants an mm100 -> twips conversion in this case, while Calc wants a pixel -> twips one, so there isn't anything here that can be abstracted in VCL. Change-Id: Ieb961afa97affbf682e13c0a56585396ae09f552 diff --git a/sc/source/ui/view/gridwin4.cxx b/sc/source/ui/view/gridwin4.cxx index e414e10..81c4136 100644 --- a/sc/source/ui/view/gridwin4.cxx +++ b/sc/source/ui/view/gridwin4.cxx @@ -987,7 +987,13 @@ void ScGridWindow::LogicInvalidate(const Rectangle* pRectangle) else { Rectangle aRectangle(*pRectangle); - if (!IsMapModeEnabled()) + // When dragging shapes the map mode is disabled. + if (IsMapModeEnabled()) + { + if (GetMapMode().GetMapUnit() == MAP_100TH_MM) + aRectangle = OutputDevice::LogicToLogic(aRectangle, MAP_100TH_MM, MAP_TWIP); + } + else aRectangle = OutputDevice::LogicToLogic(aRectangle, MAP_PIXEL, MAP_TWIP); sRectangle = aRectangle.toString(); } diff --git a/sd/source/ui/view/sdwindow.cxx b/sd/source/ui/view/sdwindow.cxx index 1268596..8506ec0 100644 --- a/sd/source/ui/view/sdwindow.cxx +++ b/sd/source/ui/view/sdwindow.cxx @@ -1003,7 +1003,12 @@ void Window::LogicInvalidate(const Rectangle* pRectangle) if (!pRectangle) sRectangle = "EMPTY"; else - sRectangle = pRectangle->toString(); + { + Rectangle aRectangle(*pRectangle); + if (GetMapMode().GetMapUnit() == MAP_100TH_MM) + aRectangle = OutputDevice::LogicToLogic(aRectangle, MAP_100TH_MM, MAP_TWIP); + sRectangle = aRectangle.toString(); + } mpViewShell->GetDoc()->libreOfficeKitCallback(LOK_CALLBACK_INVALIDATE_TILES, sRectangle.getStr()); } diff --git a/vcl/source/window/paint.cxx b/vcl/source/window/paint.cxx index f977378..1384dfe 100644 --- a/vcl/source/window/paint.cxx +++ b/vcl/source/window/paint.cxx @@ -859,13 +859,6 @@ void Window::Invalidate( sal_uInt16 nFlags ) LogicInvalidate(0); } -/// Converts rRectangle from MM100 to twips based on the map mode of rWindow. -void lcl_toTwips(const Window& rWindow, Rectangle& rRectangle) -{ - if (rWindow.GetMapMode().GetMapUnit() == MAP_100TH_MM) - rRectangle = OutputDevice::LogicToLogic(rRectangle, MAP_100TH_MM, MAP_TWIP); -} - void Window::Invalidate( const Rectangle& rRect, sal_uInt16 nFlags ) { @@ -879,7 +872,6 @@ void Window::Invalidate( const Rectangle& rRect, sal_uInt16 nFlags ) vcl::Region aRegion( aRect ); ImplInvalidate( &aRegion, nFlags ); Rectangle aLogicRectangle(rRect); - lcl_toTwips(*this, aLogicRectangle); LogicInvalidate(&aLogicRectangle); } } @@ -902,7 +894,6 @@ void Window::Invalidate( const vcl::Region& rRegion, sal_uInt16 nFlags ) { ImplInvalidate( &aRegion, nFlags ); Rectangle aLogicRectangle = rRegion.GetBoundRect(); - lcl_toTwips(*this, aLogicRectangle); LogicInvalidate(&aLogicRectangle); } } _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits