[Libreoffice-commits] core.git: drawinglayer/source svx/source
Mike Kaganski (via logerrit)
logerrit at kemper.freedesktop.org
Thu May 7 21:13:15 UTC 2020
drawinglayer/source/processor2d/vclpixelprocessor2d.cxx | 4 +++-
svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx | 13 +++++++------
svx/source/sdr/primitive2d/sdrgrafprimitive2d.cxx | 13 +++++++------
3 files changed, 17 insertions(+), 13 deletions(-)
New commits:
commit 99c337d1d3831ce9d2c7dc1cbff713f4ac49d6ac
Author: Mike Kaganski <mike.kaganski at collabora.com>
AuthorDate: Thu May 7 08:03:22 2020 +0300
Commit: Mike Kaganski <mike.kaganski at collabora.com>
CommitDate: Thu May 7 23:12:41 2020 +0200
tdf#132199: put glow before shadow, to have shadow of the glow
Also take modified color into account when drawing glow.
Change-Id: Iba136d2695cb783d13ff251d087066c2e8803d63
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93605
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski at collabora.com>
diff --git a/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx b/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
index 6c14c09c1a19..cb0e3124b19d 100644
--- a/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclpixelprocessor2d.cxx
@@ -975,7 +975,9 @@ void VclPixelProcessor2D::processGlowPrimitive2D(const primitive2d::GlowPrimitiv
BitmapFilter::Filter(mask, BitmapFilterStackBlur(fBlurRadius));
// The end result is the bitmap filled with glow color and blurred 8-bit alpha mask
- bitmap.Erase(rCandidate.getGlowColor());
+ const basegfx::BColor aGlowColor(
+ maBColorModifierStack.getModifiedColor(rCandidate.getGlowColor().getBColor()));
+ bitmap.Erase(Color(aGlowColor));
// alpha mask will be scaled up automatically to match bitmap
BitmapEx result(bitmap, AlphaMask(mask.GetBitmap()));
diff --git a/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx b/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx
index 804a653c86b2..378d78f5c6f6 100644
--- a/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx
+++ b/svx/source/sdr/primitive2d/sdrcustomshapeprimitive2d.cxx
@@ -52,6 +52,13 @@ namespace drawinglayer::primitive2d
getWordWrap()));
}
+ // tdf#132199: put glow before shadow, to have shadow of the glow, not the opposite
+ if (!aRetval.empty() && !getSdrSTAttribute().getGlow().isDefault())
+ {
+ // glow
+ aRetval = createEmbeddedGlowPrimitive(aRetval, getSdrSTAttribute().getGlow());
+ }
+
// add shadow
if(!aRetval.empty() && !getSdrSTAttribute().getShadow().isDefault())
{
@@ -71,12 +78,6 @@ namespace drawinglayer::primitive2d
}
}
- if(!aRetval.empty() && !getSdrSTAttribute().getGlow().isDefault())
- {
- // glow
- aRetval = createEmbeddedGlowPrimitive(aRetval, getSdrSTAttribute().getGlow());
- }
-
rContainer.insert(rContainer.end(), aRetval.begin(), aRetval.end());
}
diff --git a/svx/source/sdr/primitive2d/sdrgrafprimitive2d.cxx b/svx/source/sdr/primitive2d/sdrgrafprimitive2d.cxx
index 9f15f4d9fc41..2a83e5b6aeed 100644
--- a/svx/source/sdr/primitive2d/sdrgrafprimitive2d.cxx
+++ b/svx/source/sdr/primitive2d/sdrgrafprimitive2d.cxx
@@ -115,6 +115,13 @@ namespace drawinglayer::primitive2d
false));
}
+ // tdf#132199: put glow before shadow, to have shadow of the glow, not the opposite
+ if (!aRetval.empty() && !getSdrLFSTAttribute().getGlow().isDefault())
+ {
+ // glow
+ aRetval = createEmbeddedGlowPrimitive(aRetval, getSdrLFSTAttribute().getGlow());
+ }
+
// add shadow
if(!getSdrLFSTAttribute().getShadow().isDefault())
{
@@ -125,12 +132,6 @@ namespace drawinglayer::primitive2d
aTranslateGrf.getY());
}
- if (!aRetval.empty() && !getSdrLFSTAttribute().getGlow().isDefault())
- {
- // glow
- aRetval = createEmbeddedGlowPrimitive(aRetval, getSdrLFSTAttribute().getGlow());
- }
-
rContainer.insert(rContainer.end(), aRetval.begin(), aRetval.end());
}
More information about the Libreoffice-commits
mailing list