diff options
author | Michael Stahl <mstahl@redhat.com> | 2018-03-07 12:21:45 +0100 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2018-03-07 13:08:19 +0100 |
commit | 5d710cf7dda27e78f237211fd92418be4dd1c551 (patch) | |
tree | b15a4aae08f7f4512d26fdad16f841a8890c66d9 /canvas/source/vcl | |
parent | 0408a590311c837d5f0ab1abfb72a564a266ddac (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
Diffstat (limited to 'canvas/source/vcl')
-rw-r--r-- | canvas/source/vcl/canvashelper_texturefill.cxx | 2 |
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, |