From 90cfa9df3f3b586eae49ee2d2533a05238d391a4 Mon Sep 17 00:00:00 2001 From: Phil Dubach Date: Wed, 8 Jul 2009 09:43:49 -0700 Subject: [PATCH] Fix ShapeDrawable.inflateTag() to accept proper dimension specs for padding ShapeDrawable.inflateTag() handles the 'padding' tag with the standard attributes android:left, etc. The attribute values for these standard attributes should be dimension specifications, e.g. '4dp'. ShapeDrawable.inflateTag() was wrongly parsing the attribute values as plain integers. --- .../android/graphics/drawable/ShapeDrawable.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/graphics/java/android/graphics/drawable/ShapeDrawable.java b/graphics/java/android/graphics/drawable/ShapeDrawable.java index d24194f545f12..6677a3560de38 100644 --- a/graphics/java/android/graphics/drawable/ShapeDrawable.java +++ b/graphics/java/android/graphics/drawable/ShapeDrawable.java @@ -278,10 +278,15 @@ public class ShapeDrawable extends Drawable { if (name.equals("padding")) { TypedArray a = r.obtainAttributes(attrs, com.android.internal.R.styleable.ShapeDrawablePadding); - setPadding(a.getInt(com.android.internal.R.styleable.ShapeDrawablePadding_left, 0), - a.getInt(com.android.internal.R.styleable.ShapeDrawablePadding_top, 0), - a.getInt(com.android.internal.R.styleable.ShapeDrawablePadding_right, 0), - a.getInt(com.android.internal.R.styleable.ShapeDrawablePadding_bottom, 0)); + setPadding( + a.getDimensionPixelOffset( + com.android.internal.R.styleable.ShapeDrawablePadding_left, 0), + a.getDimensionPixelOffset( + com.android.internal.R.styleable.ShapeDrawablePadding_top, 0), + a.getDimensionPixelOffset( + com.android.internal.R.styleable.ShapeDrawablePadding_right, 0), + a.getDimensionPixelOffset( + com.android.internal.R.styleable.ShapeDrawablePadding_bottom, 0)); a.recycle(); return true; }