summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorJan Holesovsky <kendy@collabora.com>2016-11-30 15:38:38 +0100
committerMichael Meeks <michael.meeks@collabora.com>2016-11-30 15:18:29 +0000
commit39266f0fffbe8e89495dd96b0ace41e2d9b447d6 (patch)
treedab4876fd66102bfa80b9ea0d867ffb97e3f6313 /vcl
parent9985226ec803fa7e714eb10ec4a96a0fe6064e98 (diff)
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@collabora.com> Tested-by: Michael Meeks <michael.meeks@collabora.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/source/outdev/bitmap.cxx6
1 files changed, 3 insertions, 3 deletions
diff --git a/vcl/source/outdev/bitmap.cxx b/vcl/source/outdev/bitmap.cxx
index ef545762cad4..9d231364cbeb 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 );