Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 90cfa9df authored by Phil Dubach's avatar Phil Dubach
Browse files

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.
parent 0d725f7d
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -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;
        }