[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-5.1' - vcl/source

Jan Holesovsky kendy at collabora.com
Wed Nov 30 15:18:55 UTC 2016


 vcl/source/outdev/bitmap.cxx |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

New commits:
commit 39266f0fffbe8e89495dd96b0ace41e2d9b447d6
Author: Jan Holesovsky <kendy at collabora.com>
Date:   Wed Nov 30 15:38:38 2016 +0100

    tdf#103747: Don't re-position images when re-playing a metafile.
    
    I am not sure it's a good idea to re-position them at all; but for the moment
    don't do that only with the metafiles, as I am not sure what the other
    consequences could be.
    
    (cherry picked from commit be5369e7aa426be8b88776f58aaaba1ae926229c)
    
    Change-Id: I50e50663149f7879ddc86149d92d44cf2d5df40d
    Reviewed-on: https://gerrit.libreoffice.org/31434
    Reviewed-by: Michael Meeks <michael.meeks at collabora.com>
    Tested-by: Michael Meeks <michael.meeks at collabora.com>

diff --git a/vcl/source/outdev/bitmap.cxx b/vcl/source/outdev/bitmap.cxx
index ef54576..9d23136 100644
--- a/vcl/source/outdev/bitmap.cxx
+++ b/vcl/source/outdev/bitmap.cxx
@@ -1182,6 +1182,7 @@ void OutputDevice::DrawTransformedBitmapEx(
     const bool bMirroredY(basegfx::fTools::less(aScale.getY(), 0.0));
 
     static bool bForceToOwnTransformer(false);
+    const bool bMetafile = mpMetaFile != nullptr;
 
     if(!bForceToOwnTransformer && !bRotated && !bSheared && !bMirroredX && !bMirroredY)
     {
@@ -1193,14 +1194,14 @@ void OutputDevice::DrawTransformedBitmapEx(
             basegfx::fround(aScale.getX() + aTranslate.getX()) - aDestPt.X(),
             basegfx::fround(aScale.getY() + aTranslate.getY()) - aDestPt.Y());
         const Point aOrigin = GetMapMode().GetOrigin();
-        if (comphelper::LibreOfficeKit::isActive() && GetMapMode().GetMapUnit() != MAP_PIXEL)
+        if (!bMetafile && comphelper::LibreOfficeKit::isActive() && GetMapMode().GetMapUnit() != MAP_PIXEL)
         {
             aDestPt.Move(aOrigin.getX(), aOrigin.getY());
             EnableMapMode(false);
         }
 
         DrawBitmapEx(aDestPt, aDestSize, rBitmapEx);
-        if (comphelper::LibreOfficeKit::isActive() && GetMapMode().GetMapUnit() != MAP_PIXEL)
+        if (!bMetafile && comphelper::LibreOfficeKit::isActive() && GetMapMode().GetMapUnit() != MAP_PIXEL)
         {
             EnableMapMode(true);
             aDestPt.Move(-aOrigin.getX(), -aOrigin.getY());
@@ -1212,7 +1213,6 @@ void OutputDevice::DrawTransformedBitmapEx(
     // created transformed bitmap
     const bool bInvert(ROP_INVERT == meRasterOp);
     const bool bBitmapChangedColor(mnDrawMode & (DrawModeFlags::BlackBitmap | DrawModeFlags::WhiteBitmap | DrawModeFlags::GrayBitmap | DrawModeFlags::GhostedBitmap));
-    const bool bMetafile(mpMetaFile);
     bool bDone(false);
     const basegfx::B2DHomMatrix aFullTransform(GetViewTransformation() * rTransformation);
     const bool bTryDirectPaint(!bInvert && !bBitmapChangedColor && !bMetafile );


More information about the Libreoffice-commits mailing list