From 1ad7e5a6c67fddb39a79f62b4b5e93304f6e04b2 Mon Sep 17 00:00:00 2001 From: Luboš Luňák Date: Tue, 5 Jan 2021 14:09:26 +0100 Subject: set fill color when filling alphavdev area for gradients (tdf#138959) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When drawing a gradient to an alpha-enabled output device, make the area also opaque (=black in the alphavdev). Change-Id: I2ba1a598e0bf6291e5422253352a201e224af2b8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108806 Tested-by: Jenkins Reviewed-by: Luboš Luňák (cherry picked from commit 41cabebf9c95459c2c1912528446c45e70c3f203) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108906 Reviewed-by: Adolfo Jayme Barrientos --- vcl/source/outdev/gradient.cxx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/vcl/source/outdev/gradient.cxx b/vcl/source/outdev/gradient.cxx index 0312369c959a..510502e6f5f7 100644 --- a/vcl/source/outdev/gradient.cxx +++ b/vcl/source/outdev/gradient.cxx @@ -148,7 +148,12 @@ void OutputDevice::DrawGradient( const tools::PolyPolygon& rPolyPoly, } if( mpAlphaVDev ) + { + const Color aFillCol( mpAlphaVDev->GetFillColor() ); + mpAlphaVDev->SetFillColor( COL_BLACK ); mpAlphaVDev->DrawPolyPolygon( rPolyPoly ); + mpAlphaVDev->SetFillColor( aFillCol ); + } } void OutputDevice::ClipAndDrawGradientMetafile ( const Gradient &rGradient, const tools::PolyPolygon &rPolyPoly ) -- cgit