From 2efbe9816e097a07864a04f0722d5669b98699f4 Mon Sep 17 00:00:00 2001 From: Alan Viverette Date: Tue, 21 Oct 2014 11:04:04 -0700 Subject: [PATCH] Fix gradient drawable radius when specified as float, dimension BUG: 18070756 Change-Id: I991ff792c376c9695a007f8f1187390ab5ff6e3c --- core/res/res/values/attrs.xml | 2 +- .../java/android/graphics/drawable/GradientDrawable.java | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/core/res/res/values/attrs.xml b/core/res/res/values/attrs.xml index 747cb14052142..d9884801d369a 100644 --- a/core/res/res/values/attrs.xml +++ b/core/res/res/values/attrs.xml @@ -4911,7 +4911,7 @@ - + diff --git a/graphics/java/android/graphics/drawable/GradientDrawable.java b/graphics/java/android/graphics/drawable/GradientDrawable.java index eff5a3d938b1d..f6a78f150a3df 100644 --- a/graphics/java/android/graphics/drawable/GradientDrawable.java +++ b/graphics/java/android/graphics/drawable/GradientDrawable.java @@ -1395,9 +1395,12 @@ public class GradientDrawable extends Drawable { } else { radiusType = RADIUS_TYPE_FRACTION; } - } else { + } else if (tv.type == TypedValue.TYPE_DIMENSION) { radius = tv.getDimension(r.getDisplayMetrics()); radiusType = RADIUS_TYPE_PIXELS; + } else { + radius = tv.getFloat(); + radiusType = RADIUS_TYPE_PIXELS; } st.mGradientRadius = radius;