diff options
author | Diego Perez <diegoperez@google.com> | 2015-06-12 14:45:21 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-06-12 14:45:21 +0000 |
commit | 68155986508ef8b497228f8e60346d317e87991d (patch) | |
tree | 6953334d14c7569ed31d6c4f92d545e9eb7b7790 | |
parent | 7ffde4a6304dc4ad7de3154c12ce8bb0a8001a07 (diff) | |
parent | f5a99437bf203eca49e8ab8f74f2c206c551289b (diff) | |
download | frameworks_base-68155986508ef8b497228f8e60346d317e87991d.zip frameworks_base-68155986508ef8b497228f8e60346d317e87991d.tar.gz frameworks_base-68155986508ef8b497228f8e60346d317e87991d.tar.bz2 |
am f5a99437: Merge "Fix crash when shadowSize is 0" into lmp-mr1-dev
* commit 'f5a99437bf203eca49e8ab8f74f2c206c551289b':
Fix crash when shadowSize is 0
-rw-r--r-- | tools/layoutlib/bridge/src/android/view/ShadowPainter.java | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/tools/layoutlib/bridge/src/android/view/ShadowPainter.java b/tools/layoutlib/bridge/src/android/view/ShadowPainter.java index 38846bd..2f93bc8 100644 --- a/tools/layoutlib/bridge/src/android/view/ShadowPainter.java +++ b/tools/layoutlib/bridge/src/android/view/ShadowPainter.java @@ -34,12 +34,15 @@ public class ShadowPainter { * new image. This method attempts to mimic the same visual characteristics as the rectangular * shadow painting methods in this class, {@link #createRectangularDropShadow(java.awt.image.BufferedImage)} * and {@link #createSmallRectangularDropShadow(java.awt.image.BufferedImage)}. + * <p/> + * If shadowSize is less or equals to 1, no shadow will be painted and the source image will be + * returned instead. * * @param source the source image * @param shadowSize the size of the shadow, normally {@link #SHADOW_SIZE or {@link * #SMALL_SHADOW_SIZE}} * - * @return a new image with the shadow painted in + * @return an image with the shadow painted in or the source image if shadowSize <= 1 */ @NonNull public static BufferedImage createDropShadow(BufferedImage source, int shadowSize) { @@ -60,11 +63,15 @@ public class ShadowPainter { * @param shadowOpacity the opacity of the shadow, with 0=transparent and 1=opaque * @param shadowRgb the RGB int to use for the shadow color * - * @return a new image with the source image on top of its shadow + * @return a new image with the source image on top of its shadow when shadowSize > 0 or the + * source image otherwise */ @SuppressWarnings({"SuspiciousNameCombination", "UnnecessaryLocalVariable"}) // Imported code public static BufferedImage createDropShadow(BufferedImage source, int shadowSize, float shadowOpacity, int shadowRgb) { + if (shadowSize <= 0) { + return source; + } // This code is based on // http://www.jroller.com/gfx/entry/non_rectangular_shadow |