Fixed issue where large blur radii
would blur less than smaller blur radii
Changed SkImageFilter blur creation to include
SkTileMode::kClamp parameter to use edge pixels
for blur kernels that are larger than the source
Fixes: 167493483
Test: Added test to CTS ShaderTest
Change-Id: Ibbe1e0dfaf46413fcae665620fd154b9bf9897c9
diff --git a/libs/hwui/shader/BlurShader.cpp b/libs/hwui/shader/BlurShader.cpp
index 4d18cdd..fa10be1 100644
--- a/libs/hwui/shader/BlurShader.cpp
+++ b/libs/hwui/shader/BlurShader.cpp
@@ -26,7 +26,9 @@
SkImageFilters::Blur(
Blur::convertRadiusToSigma(radiusX),
Blur::convertRadiusToSigma(radiusY),
- inputShader ? inputShader->asSkImageFilter() : nullptr)
+ SkTileMode::kClamp,
+ inputShader ? inputShader->asSkImageFilter() : nullptr,
+ nullptr)
) { }
sk_sp<SkImageFilter> BlurShader::makeSkImageFilter() {