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

Commit d6479ec5 authored by Alan Viverette's avatar Alan Viverette
Browse files

Clean up layout constructors, make them consistent

All constructors now flow through to each class's own 4-argument
constructor. This ensures that theme attributes are applied even
if a base AttributeSet is not provided.

BUG: 10680863
Change-Id: I727d2961bf017c6a5e0206367081670782583394
parent de1ef640
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -31195,10 +31195,10 @@ package android.widget {
  }
  public class GridLayout extends android.view.ViewGroup {
    ctor public GridLayout(android.content.Context);
    ctor public GridLayout(android.content.Context, android.util.AttributeSet);
    ctor public GridLayout(android.content.Context, android.util.AttributeSet, int);
    ctor public GridLayout(android.content.Context, android.util.AttributeSet, int, int);
    ctor public GridLayout(android.content.Context, android.util.AttributeSet);
    ctor public GridLayout(android.content.Context);
    method public int getAlignmentMode();
    method public int getColumnCount();
    method public int getOrientation();
+7 −12
Original line number Diff line number Diff line
@@ -455,26 +455,21 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager
    private int mChildCountWithTransientState = 0;

    public ViewGroup(Context context) {
        super(context);
        initViewGroup();
        this(context, null);
    }

    public ViewGroup(Context context, AttributeSet attrs) {
        super(context, attrs);
        initViewGroup();
        initFromAttributes(context, attrs);
        this(context, attrs, 0);
    }

    public ViewGroup(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
        initViewGroup();
        initFromAttributes(context, attrs);
        this(context, attrs, defStyleAttr, 0);
    }

    public ViewGroup(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
        super(context, attrs, defStyleAttr, defStyleRes);
        initViewGroup();
        initFromAttributes(context, attrs);
        initFromAttributes(context, attrs, defStyleAttr, defStyleRes);
    }

    private boolean debugDraw() {
@@ -504,9 +499,9 @@ public abstract class ViewGroup extends View implements ViewParent, ViewManager
        mPersistentDrawingCache = PERSISTENT_SCROLLING_CACHE;
    }

    private void initFromAttributes(Context context, AttributeSet attrs) {
        TypedArray a = context.obtainStyledAttributes(attrs,
                R.styleable.ViewGroup);
    private void initFromAttributes(
            Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
        final TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.ViewGroup);

        final int N = a.getIndexCount();
        for (int i = 0; i < N; i++) {
+3 −3
Original line number Diff line number Diff line
@@ -40,15 +40,15 @@ import android.widget.RemoteViews.RemoteView;
@RemoteView
public class AbsoluteLayout extends ViewGroup {
    public AbsoluteLayout(Context context) {
        super(context);
        this(context, null);
    }

    public AbsoluteLayout(Context context, AttributeSet attrs) {
        super(context, attrs);
        this(context, attrs, 0);
    }

    public AbsoluteLayout(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr, 0);
        this(context, attrs, defStyleAttr, 0);
    }

    public AbsoluteLayout(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
+2 −2
Original line number Diff line number Diff line
@@ -223,11 +223,11 @@ public abstract class AdapterView<T extends Adapter> extends ViewGroup {
    boolean mBlockLayoutRequests = false;

    public AdapterView(Context context) {
        super(context);
        this(context, null);
    }

    public AdapterView(Context context, AttributeSet attrs) {
        super(context, attrs);
        this(context, attrs, 0);
    }

    public AdapterView(Context context, AttributeSet attrs, int defStyleAttr) {
+8 −18
Original line number Diff line number Diff line
@@ -262,9 +262,14 @@ public class GridLayout extends ViewGroup {

    // Constructors

    /**
     * {@inheritDoc}
     */
    public GridLayout(Context context) {
        this(context, null);
    }

    public GridLayout(Context context, AttributeSet attrs) {
        this(context, attrs, 0);
    }

    public GridLayout(Context context, AttributeSet attrs, int defStyleAttr) {
        this(context, attrs, defStyleAttr, 0);
    }
@@ -287,21 +292,6 @@ public class GridLayout extends ViewGroup {
        }
    }

    /**
     * {@inheritDoc}
     */
    public GridLayout(Context context, AttributeSet attrs) {
        this(context, attrs, 0);
    }

    /**
     * {@inheritDoc}
     */
    public GridLayout(Context context) {
        //noinspection NullableProblems
        this(context, null);
    }

    // Implementation

    /**
Loading