Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(819)

Unified Diff: Source/platform/graphics/filters/FEDropShadow.cpp

Issue 143463002: Apply flood-opacity for feDropShadow (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Rebase. Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « LayoutTests/svg/filters/feDropShadow-flood-opacity-2-expected.svg ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/platform/graphics/filters/FEDropShadow.cpp
diff --git a/Source/platform/graphics/filters/FEDropShadow.cpp b/Source/platform/graphics/filters/FEDropShadow.cpp
index c05ff4d9494484d3d76453df51e4ce9fc19168e1..2a16778a3ff4870caa57a959d5ad8471454ab36d 100644
--- a/Source/platform/graphics/filters/FEDropShadow.cpp
+++ b/Source/platform/graphics/filters/FEDropShadow.cpp
@@ -88,8 +88,9 @@ void FEDropShadow::applySoftware()
GraphicsContext* resultContext = resultImage->context();
ASSERT(resultContext);
+ Color color = m_shadowColor.combineWithAlpha(m_shadowOpacity);
SkAutoTUnref<SkImageFilter> blurFilter(new SkBlurImageFilter(blurRadius.width(), blurRadius.height()));
- SkAutoTUnref<SkColorFilter> colorFilter(SkColorFilter::CreateModeFilter(m_shadowColor.rgb(), SkXfermode::kSrcIn_Mode));
+ SkAutoTUnref<SkColorFilter> colorFilter(SkColorFilter::CreateModeFilter(color.rgb(), SkXfermode::kSrcIn_Mode));
SkPaint paint;
paint.setImageFilter(blurFilter.get());
paint.setColorFilter(colorFilter.get());
@@ -111,9 +112,10 @@ PassRefPtr<SkImageFilter> FEDropShadow::createImageFilter(SkiaImageFilterBuilder
float dx = filter()->applyHorizontalScale(m_dx);
float dy = filter()->applyVerticalScale(m_dy);
float stdX = filter()->applyHorizontalScale(m_stdX);
- float stdY = filter()->applyHorizontalScale(m_stdY);
+ float stdY = filter()->applyVerticalScale(m_stdY);
+ Color color = m_shadowColor.combineWithAlpha(m_shadowOpacity);
SkImageFilter::CropRect cropRect = getCropRect(builder->cropOffset());
- return adoptRef(new SkDropShadowImageFilter(SkFloatToScalar(dx), SkFloatToScalar(dy), SkFloatToScalar(stdX), SkFloatToScalar(stdY), m_shadowColor.rgb(), input.get(), &cropRect));
+ return adoptRef(new SkDropShadowImageFilter(SkFloatToScalar(dx), SkFloatToScalar(dy), SkFloatToScalar(stdX), SkFloatToScalar(stdY), color.rgb(), input.get(), &cropRect));
}
« no previous file with comments | « LayoutTests/svg/filters/feDropShadow-flood-opacity-2-expected.svg ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698