diff options
author | Caolán McNamara <caolanm@redhat.com> | 2014-04-29 10:11:28 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2014-04-29 10:16:37 +0100 |
commit | 3db00c554b38ee6c1b6e969768da53db4dc2f92a (patch) | |
tree | 950071e90eebb626a29754449f313279d470692f /drawinglayer | |
parent | e34c437d2e98753159c9bd82516386143d707d93 (diff) |
Resolves: fdo#62038 EPS not rendered in drawinglayer code paths
It attempts to see if the outputdevice can draw the true EPS
but if the outputdevice is in record-only mode it just stashs a
new eps metaaction, and this time with no fallback image, and
happily returns ok so the drawing layer ends up with a new
replacement eps metaction, except with no preview anymore.
Perhaps DrawEPS should return false here, but its safer this way
Change-Id: I0e0b16e4b2be00802a1af1f8147500d816a3c5de
Diffstat (limited to 'drawinglayer')
-rw-r--r-- | drawinglayer/source/processor2d/vclprocessor2d.cxx | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drawinglayer/source/processor2d/vclprocessor2d.cxx b/drawinglayer/source/processor2d/vclprocessor2d.cxx index b7c3bfe00ff8..d23e5b5a908a 100644 --- a/drawinglayer/source/processor2d/vclprocessor2d.cxx +++ b/drawinglayer/source/processor2d/vclprocessor2d.cxx @@ -1353,12 +1353,14 @@ namespace drawinglayer if(!aRectangle.IsEmpty()) { + bool bWillReallyRender = mpOutputDevice->IsDeviceOutputNecessary(); // try to paint EPS directly without fallback visualisation - const bool bEPSPaintedDirectly(mpOutputDevice->DrawEPS( + const bool bEPSPaintedDirectly = bWillReallyRender && + mpOutputDevice->DrawEPS( aRectangle.TopLeft(), aRectangle.GetSize(), rEpsPrimitive2D.getGfxLink(), - 0)); + 0); if(!bEPSPaintedDirectly) { |