Blob Blame History Raw
From f3edb775652b288ac0c4c38186b4d23bfa603a6c Mon Sep 17 00:00:00 2001
From: Miklos Vajna <vmiklos@collabora.co.uk>
Date: Tue, 17 Nov 2015 17:07:47 +0100
Subject: [PATCH 339/398] sw lok comments: fix comment widget width with custom
 zoom

When tiled rendering, then only the render context (or failing that,
SwViewShell::GetOut()) has the correct zoom level, so use that when
doing pixel-to-logic conversion or scaling pixel values.

Change-Id: I265a642b8253c6eced42da2a0e06a2de25c36ca8
(cherry picked from commit c9db32de2deeaa705e3da4945f62a94b75a7e4c5)
---
 sw/source/uibase/docvw/PostItMgr.cxx  | 2 +-
 sw/source/uibase/docvw/SidebarWin.cxx | 7 ++++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/sw/source/uibase/docvw/PostItMgr.cxx b/sw/source/uibase/docvw/PostItMgr.cxx
index 40e2bda8f6b7..e0ea88fd86b4 100644
--- a/sw/source/uibase/docvw/PostItMgr.cxx
+++ b/sw/source/uibase/docvw/PostItMgr.cxx
@@ -870,7 +870,7 @@ void SwPostItMgr::PaintTile(OutputDevice& rRenderContext, const Rectangle& /*rRe
         MapMode aMapMode(rRenderContext.GetMapMode());
         aMapMode.SetOrigin(aMapMode.GetOrigin() + aOffset);
         rRenderContext.SetMapMode(aMapMode);
-        Size aSize(pPostIt->PixelToLogic(pPostIt->GetSizePixel()));
+        Size aSize(rRenderContext.PixelToLogic(pPostIt->GetSizePixel()));
         Rectangle aRectangle(Point(0, 0), aSize);
 
         pPostIt->PaintTile(rRenderContext, aRectangle);
diff --git a/sw/source/uibase/docvw/SidebarWin.cxx b/sw/source/uibase/docvw/SidebarWin.cxx
index f9163a80f44b..693bcdf5b09a 100644
--- a/sw/source/uibase/docvw/SidebarWin.cxx
+++ b/sw/source/uibase/docvw/SidebarWin.cxx
@@ -286,7 +286,8 @@ void SwSidebarWin::PaintTile(vcl::RenderContext& rRenderContext, const Rectangle
             continue;
 
         rRenderContext.Push(PushFlags::MAPMODE);
-        Point aOffset(PixelToLogic(pChild->GetPosPixel()));
+        const Fraction& rFraction(mrView.GetWrtShellPtr()->GetOut()->GetMapMode().GetScaleY());
+        Point aOffset(PixelToLogic(pChild->GetPosPixel() * rFraction.GetDenominator() / rFraction.GetNumerator()));
         MapMode aMapMode(rRenderContext.GetMapMode());
         aMapMode.SetOrigin(aMapMode.GetOrigin() + aOffset);
         rRenderContext.SetMapMode(aMapMode);
@@ -1411,7 +1412,7 @@ sal_Int32 SwSidebarWin::GetMetaButtonAreaWidth()
 
 sal_Int32 SwSidebarWin::GetMetaHeight()
 {
-    const Fraction& f( GetMapMode().GetScaleY() );
+    const Fraction& f(mrView.GetWrtShellPtr()->GetOut()->GetMapMode().GetScaleY());
     return POSTIT_META_HEIGHT * f.GetNumerator() / f.GetDenominator();
 }
 
@@ -1422,7 +1423,7 @@ sal_Int32 SwSidebarWin::GetMinimumSizeWithMeta()
 
 sal_Int32 SwSidebarWin::GetMinimumSizeWithoutMeta()
 {
-    const Fraction& f( GetMapMode().GetScaleY() );
+    const Fraction& f(mrView.GetWrtShellPtr()->GetOut()->GetMapMode().GetScaleY());
     return POSTIT_MINIMUMSIZE_WITHOUT_META * f.GetNumerator() / f.GetDenominator();
 }
 
-- 
2.12.0