diff options
author | Diego Perez <diegoperez@google.com> | 2015-06-12 14:57:27 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-06-12 14:57:27 +0000 |
commit | e10e8005903572158cbb9c7f869508a247ff51ad (patch) | |
tree | b6beeb5a41647bafaf97f2a320bf2f849e6d2ed7 /tools/layoutlib/bridge/src | |
parent | 786cd12f785374f93c19c909687ea300e41ffbc2 (diff) | |
parent | 68155986508ef8b497228f8e60346d317e87991d (diff) | |
download | frameworks_base-e10e8005903572158cbb9c7f869508a247ff51ad.zip frameworks_base-e10e8005903572158cbb9c7f869508a247ff51ad.tar.gz frameworks_base-e10e8005903572158cbb9c7f869508a247ff51ad.tar.bz2 |
am 68155986: am f5a99437: Merge "Fix crash when shadowSize is 0" into lmp-mr1-dev
* commit '68155986508ef8b497228f8e60346d317e87991d':
Fix crash when shadowSize is 0
Diffstat (limited to 'tools/layoutlib/bridge/src')
-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 |