summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Stahl <mstahl@redhat.com>2018-03-07 12:21:45 +0100
committerMichael Stahl <mstahl@redhat.com>2018-03-07 13:08:19 +0100
commit5d710cf7dda27e78f237211fd92418be4dd1c551 (patch)
treeb15a4aae08f7f4512d26fdad16f841a8890c66d9
parent0408a590311c837d5f0ab1abfb72a564a266ddac (diff)
VCL canvas: fix clipping of gradients (related: tdf#115142)
When using the presenter console, the secondary screen has a small view of the current slide, which is called a "Pane" in sdext. Clipping for this is done by sd::presenter::PresenterCanvas, which wraps the full-screen VCL canvas and has a MergeViewState() to intersect the clip region. The VCL canvas has a bug in its gradientFill() implemenation where it overrides the existing clip on the OutputDevice instead of intersecting it. This properly fixes the bug that was wrongly and badly attempted to be fixed by commit 99e373cd4c78084ded349f3e3de7b0504af2dd90. Change-Id: Id02678c2f134fe7b190866d6a6fff5b2e5e3aaff
-rw-r--r--canvas/source/vcl/canvashelper_texturefill.cxx2
1 files changed, 1 insertions, 1 deletions
diff --git a/canvas/source/vcl/canvashelper_texturefill.cxx b/canvas/source/vcl/canvashelper_texturefill.cxx
index fcec72c0b475..d99bdb1ff77d 100644
--- a/canvas/source/vcl/canvashelper_texturefill.cxx
+++ b/canvas/source/vcl/canvashelper_texturefill.cxx
@@ -602,7 +602,7 @@ namespace vclcanvas
const vcl::Region aPolyClipRegion( rPoly );
rOutDev.Push( PushFlags::CLIPREGION );
- rOutDev.SetClipRegion( aPolyClipRegion );
+ rOutDev.IntersectClipRegion( aPolyClipRegion );
doGradientFill( rOutDev,
rValues,