From 81c5808af3987e81f571e0436d04a6a96ccf19ca Mon Sep 17 00:00:00 2001 From: Miklos Vajna Date: Fri, 13 Nov 2015 11:33:43 +0100 Subject: [PATCH 322/398] editeng lok: respect origin of map mode for INVALIDATE_VISIBLE_CURSOR Writer comments are separate widgets, but we want to have coordinates in absolutes twips, so give Writer a chance to inform us about the delta. For now only do this in case the map unit is twips, as Impress sets the origin already. Change-Id: Idf340944165e44b0888c00965d6be7798712ff76 (cherry picked from commit e988ab84f1c32519bfca758086c749ba98a5a85f) --- editeng/source/editeng/impedit.cxx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/editeng/source/editeng/impedit.cxx b/editeng/source/editeng/impedit.cxx index f7e2886c0524..8038ac6d3d41 100644 --- a/editeng/source/editeng/impedit.cxx +++ b/editeng/source/editeng/impedit.cxx @@ -947,6 +947,13 @@ void ImpEditView::ShowCursor( bool bGotoCursor, bool bForceVisCursor, sal_uInt16 // LOK output is always in twips, convert from mm100 if necessary. if (pOutWin->GetMapMode().GetMapUnit() == MAP_100TH_MM) aRect = OutputDevice::LogicToLogic(aRect, MAP_100TH_MM, MAP_TWIP); + else if (pOutWin->GetMapMode().GetMapUnit() == MAP_TWIP) + { + // Writer comments: they use editeng, but are separate widgets. + Point aOrigin = pOutWin->GetMapMode().GetOrigin(); + // Move the rectangle, so that we output absolute twips. + aRect.Move(aOrigin.getX(), aOrigin.getY()); + } // Let the LOK client decide the cursor width. aRect.setWidth(0); -- 2.12.0