Loading graphics/java/android/graphics/drawable/DrawableContainer.java +7 −8 Original line number Diff line number Diff line Loading @@ -1128,8 +1128,6 @@ public class DrawableContainer extends Drawable implements Drawable.Callback { createAllFutures(); mCheckedOpacity = true; final int N = mNumChildren; final Drawable[] drawables = mDrawables; int op = (N > 0) ? drawables[0].getOpacity() : PixelFormat.TRANSPARENT; Loading @@ -1138,6 +1136,7 @@ public class DrawableContainer extends Drawable implements Drawable.Callback { } mOpacity = op; mCheckedOpacity = true; return op; } Loading @@ -1148,19 +1147,19 @@ public class DrawableContainer extends Drawable implements Drawable.Callback { createAllFutures(); mCheckedStateful = true; final int N = mNumChildren; final Drawable[] drawables = mDrawables; boolean isStateful = false; for (int i = 0; i < N; i++) { if (drawables[i].isStateful()) { mStateful = true; return true; isStateful = true; break; } } mStateful = false; return false; mStateful = isStateful; mCheckedStateful = true; return isStateful; } public void growArray(int oldSize, int newSize) { Loading graphics/java/android/graphics/drawable/LayerDrawable.java +56 −56 Original line number Diff line number Diff line Loading @@ -137,7 +137,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { layers[i].setCallback(this); mLayerState.mChildrenChangingConfigurations |= layers[i].getChangingConfigurations(); } mLayerState.mNum = length; mLayerState.mNumChildren = length; mLayerState.mChildren = r; ensurePadding(); Loading @@ -154,7 +154,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { */ LayerDrawable(@Nullable LayerState state, @Nullable Resources res) { mLayerState = createConstantState(state, res); if (mLayerState.mNum > 0) { if (mLayerState.mNumChildren > 0) { ensurePadding(); refreshPadding(); } Loading Loading @@ -185,7 +185,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { a.recycle(); final ChildDrawable[] array = state.mChildren; final int N = state.mNum; final int N = state.mNumChildren; for (int i = 0; i < N; i++) { final ChildDrawable layer = array[i]; layer.setDensity(density); Loading Loading @@ -217,7 +217,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } final ChildDrawable[] array = state.mChildren; final int N = state.mNum; final int N = state.mNumChildren; for (int i = 0; i < N; i++) { final ChildDrawable layer = array[i]; layer.setDensity(density); Loading Loading @@ -416,7 +416,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } final ChildDrawable[] layers = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { if (layers[i].mDrawable.isProjected()) { return true; Loading @@ -435,7 +435,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { int addLayer(@NonNull ChildDrawable layer) { final LayerState st = mLayerState; final int N = st.mChildren != null ? st.mChildren.length : 0; final int i = st.mNum; final int i = st.mNumChildren; if (i >= N) { final ChildDrawable[] nu = new ChildDrawable[N + 10]; if (i > 0) { Loading @@ -446,7 +446,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } st.mChildren[i] = layer; st.mNum++; st.mNumChildren++; st.invalidateCache(); return i; } Loading Loading @@ -514,7 +514,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { */ public Drawable findDrawableByLayerId(int id) { final ChildDrawable[] layers = mLayerState.mChildren; for (int i = mLayerState.mNum - 1; i >= 0; i--) { for (int i = mLayerState.mNumChildren - 1; i >= 0; i--) { if (layers[i].mId == id) { return layers[i].mDrawable; } Loading Loading @@ -549,7 +549,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { * @attr ref android.R.styleable#LayerDrawableItem_id */ public int getId(int index) { if (index >= mLayerState.mNum) { if (index >= mLayerState.mNumChildren) { throw new IndexOutOfBoundsException(); } return mLayerState.mChildren[index].mId; Loading @@ -561,7 +561,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { * @return The number of layers. */ public int getNumberOfLayers() { return mLayerState.mNum; return mLayerState.mNumChildren; } /** Loading Loading @@ -593,7 +593,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { */ public int findIndexByLayerId(int id) { final ChildDrawable[] layers = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final ChildDrawable childDrawable = layers[i]; if (childDrawable.mId == id) { Loading @@ -615,7 +615,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { * @attr ref android.R.styleable#LayerDrawableItem_drawable */ public void setDrawable(int index, Drawable drawable) { if (index >= mLayerState.mNum) { if (index >= mLayerState.mNumChildren) { throw new IndexOutOfBoundsException(); } Loading Loading @@ -651,7 +651,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { * @attr ref android.R.styleable#LayerDrawableItem_drawable */ public Drawable getDrawable(int index) { if (index >= mLayerState.mNum) { if (index >= mLayerState.mNumChildren) { throw new IndexOutOfBoundsException(); } return mLayerState.mChildren[index].mDrawable; Loading Loading @@ -1003,7 +1003,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void draw(Canvas canvas) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading Loading @@ -1230,7 +1230,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { // Add all the padding. final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { refreshChildPadding(i, array[i]); Loading @@ -1249,7 +1249,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { // Take the max padding. final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { refreshChildPadding(i, array[i]); Loading @@ -1268,7 +1268,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void getOutline(@NonNull Outline outline) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1283,7 +1283,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setHotspot(float x, float y) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1295,7 +1295,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setHotspotBounds(int left, int top, int right, int bottom) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading Loading @@ -1323,7 +1323,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { public boolean setVisible(boolean visible, boolean restart) { final boolean changed = super.setVisible(visible, restart); final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1337,7 +1337,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setDither(boolean dither) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1349,7 +1349,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setAlpha(int alpha) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1371,7 +1371,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setColorFilter(ColorFilter colorFilter) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1383,7 +1383,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setTintList(ColorStateList tint) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1395,7 +1395,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setTintMode(Mode tintMode) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1406,7 +1406,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { private Drawable getFirstNonNullDrawable() { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading Loading @@ -1444,7 +1444,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { mLayerState.mAutoMirrored = mirrored; final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1461,7 +1461,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void jumpToCurrentState() { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1480,7 +1480,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { boolean changed = false; final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null && dr.isStateful() && dr.setState(state)) { Loading @@ -1501,7 +1501,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { boolean changed = false; final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null && dr.setLevel(level)) { Loading Loading @@ -1543,7 +1543,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { final boolean isPaddingNested = mLayerState.mPaddingMode == PADDING_MODE_NEST; final ChildDrawable[] array = mLayerState.mChildren; for (int i = 0, count = mLayerState.mNum; i < count; i++) { for (int i = 0, count = mLayerState.mNumChildren; i < count; i++) { final ChildDrawable r = array[i]; final Drawable d = r.mDrawable; if (d == null) { Loading Loading @@ -1642,7 +1642,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { final boolean nest = mLayerState.mPaddingMode == PADDING_MODE_NEST; final boolean isLayoutRtl = getLayoutDirection() == LayoutDirection.RTL; final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final ChildDrawable r = array[i]; if (r.mDrawable == null) { Loading Loading @@ -1684,7 +1684,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { final boolean nest = mLayerState.mPaddingMode == PADDING_MODE_NEST; final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final ChildDrawable r = array[i]; if (r.mDrawable == null) { Loading Loading @@ -1733,7 +1733,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { * Ensures the child padding caches are large enough. */ void ensurePadding() { final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; if (mPaddingL != null && mPaddingL.length >= N) { return; } Loading @@ -1745,7 +1745,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } void refreshPadding() { final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; final ChildDrawable[] array = mLayerState.mChildren; for (int i = 0; i < N; i++) { refreshChildPadding(i, array[i]); Loading @@ -1766,7 +1766,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { if (!mMutated && super.mutate() == this) { mLayerState = createConstantState(mLayerState, null); final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1785,7 +1785,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { super.clearMutated(); final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1800,7 +1800,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { boolean changed = false; final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading Loading @@ -1905,7 +1905,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { static class LayerState extends ConstantState { private int[] mThemeAttrs; int mNum; int mNumChildren; ChildDrawable[] mChildren; int mDensity; Loading @@ -1922,10 +1922,10 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Config int mChangingConfigurations; @Config int mChildrenChangingConfigurations; private boolean mHaveOpacity; private boolean mCheckedOpacity; private int mOpacity; private boolean mHaveIsStateful; private boolean mCheckedStateful; private boolean mIsStateful; private boolean mAutoMirrored = false; Loading @@ -1938,9 +1938,9 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { if (orig != null) { final ChildDrawable[] origChildDrawable = orig.mChildren; final int N = orig.mNum; final int N = orig.mNumChildren; mNum = N; mNumChildren = N; mChildren = new ChildDrawable[N]; mChangingConfigurations = orig.mChangingConfigurations; Loading @@ -1951,9 +1951,9 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { mChildren[i] = new ChildDrawable(or, owner, res); } mHaveOpacity = orig.mHaveOpacity; mCheckedOpacity = orig.mCheckedOpacity; mOpacity = orig.mOpacity; mHaveIsStateful = orig.mHaveIsStateful; mCheckedStateful = orig.mCheckedStateful; mIsStateful = orig.mIsStateful; mAutoMirrored = orig.mAutoMirrored; mPaddingMode = orig.mPaddingMode; Loading @@ -1970,7 +1970,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { applyDensityScaling(orig.mDensity, mDensity); } } else { mNum = 0; mNumChildren = 0; mChildren = null; } } Loading Loading @@ -2022,7 +2022,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } final ChildDrawable[] array = mChildren; final int N = mNum; final int N = mNumChildren; for (int i = 0; i < N; i++) { final ChildDrawable layer = array[i]; if (layer.canApplyTheme()) { Loading Loading @@ -2050,12 +2050,12 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } public final int getOpacity() { if (mHaveOpacity) { if (mCheckedOpacity) { return mOpacity; } final int N = mNumChildren; final ChildDrawable[] array = mChildren; final int N = mNum; // Seek to the first non-null drawable. int firstIndex = -1; Loading @@ -2082,17 +2082,17 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } mOpacity = op; mHaveOpacity = true; mCheckedOpacity = true; return op; } public final boolean isStateful() { if (mHaveIsStateful) { if (mCheckedStateful) { return mIsStateful; } final int N = mNumChildren; final ChildDrawable[] array = mChildren; final int N = mNum; boolean isStateful = false; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; Loading @@ -2103,13 +2103,13 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } mIsStateful = isStateful; mHaveIsStateful = true; mCheckedStateful = true; return isStateful; } public final boolean canConstantState() { final ChildDrawable[] array = mChildren; final int N = mNum; final int N = mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null && dr.getConstantState() == null) { Loading @@ -2122,8 +2122,8 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } public void invalidateCache() { mHaveOpacity = false; mHaveIsStateful = false; mCheckedOpacity = false; mCheckedStateful = false; } } Loading graphics/java/android/graphics/drawable/RippleDrawable.java +4 −4 Original line number Diff line number Diff line Loading @@ -667,7 +667,7 @@ public class RippleDrawable extends LayerDrawable { public void getOutline(@NonNull Outline outline) { final LayerState state = mLayerState; final ChildDrawable[] children = state.mChildren; final int N = state.mNum; final int N = state.mNumChildren; for (int i = 0; i < N; i++) { if (children[i].mId != R.id.mask) { children[i].mDrawable.getOutline(outline); Loading Loading @@ -815,7 +815,7 @@ public class RippleDrawable extends LayerDrawable { // Check for non-opaque, non-mask content. final ChildDrawable[] array = mLayerState.mChildren; final int count = mLayerState.mNum; final int count = mLayerState.mNumChildren; for (int i = 0; i < count; i++) { if (array[i].mDrawable.getOpacity() != PixelFormat.OPAQUE) { return MASK_CONTENT; Loading @@ -829,7 +829,7 @@ public class RippleDrawable extends LayerDrawable { private void drawContent(Canvas canvas) { // Draw everything except the mask. final ChildDrawable[] array = mLayerState.mChildren; final int count = mLayerState.mNum; final int count = mLayerState.mNumChildren; for (int i = 0; i < count; i++) { if (array[i].mId != R.id.mask) { array[i].mDrawable.draw(canvas); Loading Loading @@ -1045,7 +1045,7 @@ public class RippleDrawable extends LayerDrawable { mLayerState = mState; mDensity = Drawable.resolveDensity(res, mState.mDensity); if (mState.mNum > 0) { if (mState.mNumChildren > 0) { ensurePadding(); refreshPadding(); } Loading Loading
graphics/java/android/graphics/drawable/DrawableContainer.java +7 −8 Original line number Diff line number Diff line Loading @@ -1128,8 +1128,6 @@ public class DrawableContainer extends Drawable implements Drawable.Callback { createAllFutures(); mCheckedOpacity = true; final int N = mNumChildren; final Drawable[] drawables = mDrawables; int op = (N > 0) ? drawables[0].getOpacity() : PixelFormat.TRANSPARENT; Loading @@ -1138,6 +1136,7 @@ public class DrawableContainer extends Drawable implements Drawable.Callback { } mOpacity = op; mCheckedOpacity = true; return op; } Loading @@ -1148,19 +1147,19 @@ public class DrawableContainer extends Drawable implements Drawable.Callback { createAllFutures(); mCheckedStateful = true; final int N = mNumChildren; final Drawable[] drawables = mDrawables; boolean isStateful = false; for (int i = 0; i < N; i++) { if (drawables[i].isStateful()) { mStateful = true; return true; isStateful = true; break; } } mStateful = false; return false; mStateful = isStateful; mCheckedStateful = true; return isStateful; } public void growArray(int oldSize, int newSize) { Loading
graphics/java/android/graphics/drawable/LayerDrawable.java +56 −56 Original line number Diff line number Diff line Loading @@ -137,7 +137,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { layers[i].setCallback(this); mLayerState.mChildrenChangingConfigurations |= layers[i].getChangingConfigurations(); } mLayerState.mNum = length; mLayerState.mNumChildren = length; mLayerState.mChildren = r; ensurePadding(); Loading @@ -154,7 +154,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { */ LayerDrawable(@Nullable LayerState state, @Nullable Resources res) { mLayerState = createConstantState(state, res); if (mLayerState.mNum > 0) { if (mLayerState.mNumChildren > 0) { ensurePadding(); refreshPadding(); } Loading Loading @@ -185,7 +185,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { a.recycle(); final ChildDrawable[] array = state.mChildren; final int N = state.mNum; final int N = state.mNumChildren; for (int i = 0; i < N; i++) { final ChildDrawable layer = array[i]; layer.setDensity(density); Loading Loading @@ -217,7 +217,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } final ChildDrawable[] array = state.mChildren; final int N = state.mNum; final int N = state.mNumChildren; for (int i = 0; i < N; i++) { final ChildDrawable layer = array[i]; layer.setDensity(density); Loading Loading @@ -416,7 +416,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } final ChildDrawable[] layers = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { if (layers[i].mDrawable.isProjected()) { return true; Loading @@ -435,7 +435,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { int addLayer(@NonNull ChildDrawable layer) { final LayerState st = mLayerState; final int N = st.mChildren != null ? st.mChildren.length : 0; final int i = st.mNum; final int i = st.mNumChildren; if (i >= N) { final ChildDrawable[] nu = new ChildDrawable[N + 10]; if (i > 0) { Loading @@ -446,7 +446,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } st.mChildren[i] = layer; st.mNum++; st.mNumChildren++; st.invalidateCache(); return i; } Loading Loading @@ -514,7 +514,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { */ public Drawable findDrawableByLayerId(int id) { final ChildDrawable[] layers = mLayerState.mChildren; for (int i = mLayerState.mNum - 1; i >= 0; i--) { for (int i = mLayerState.mNumChildren - 1; i >= 0; i--) { if (layers[i].mId == id) { return layers[i].mDrawable; } Loading Loading @@ -549,7 +549,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { * @attr ref android.R.styleable#LayerDrawableItem_id */ public int getId(int index) { if (index >= mLayerState.mNum) { if (index >= mLayerState.mNumChildren) { throw new IndexOutOfBoundsException(); } return mLayerState.mChildren[index].mId; Loading @@ -561,7 +561,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { * @return The number of layers. */ public int getNumberOfLayers() { return mLayerState.mNum; return mLayerState.mNumChildren; } /** Loading Loading @@ -593,7 +593,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { */ public int findIndexByLayerId(int id) { final ChildDrawable[] layers = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final ChildDrawable childDrawable = layers[i]; if (childDrawable.mId == id) { Loading @@ -615,7 +615,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { * @attr ref android.R.styleable#LayerDrawableItem_drawable */ public void setDrawable(int index, Drawable drawable) { if (index >= mLayerState.mNum) { if (index >= mLayerState.mNumChildren) { throw new IndexOutOfBoundsException(); } Loading Loading @@ -651,7 +651,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { * @attr ref android.R.styleable#LayerDrawableItem_drawable */ public Drawable getDrawable(int index) { if (index >= mLayerState.mNum) { if (index >= mLayerState.mNumChildren) { throw new IndexOutOfBoundsException(); } return mLayerState.mChildren[index].mDrawable; Loading Loading @@ -1003,7 +1003,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void draw(Canvas canvas) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading Loading @@ -1230,7 +1230,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { // Add all the padding. final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { refreshChildPadding(i, array[i]); Loading @@ -1249,7 +1249,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { // Take the max padding. final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { refreshChildPadding(i, array[i]); Loading @@ -1268,7 +1268,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void getOutline(@NonNull Outline outline) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1283,7 +1283,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setHotspot(float x, float y) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1295,7 +1295,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setHotspotBounds(int left, int top, int right, int bottom) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading Loading @@ -1323,7 +1323,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { public boolean setVisible(boolean visible, boolean restart) { final boolean changed = super.setVisible(visible, restart); final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1337,7 +1337,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setDither(boolean dither) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1349,7 +1349,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setAlpha(int alpha) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1371,7 +1371,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setColorFilter(ColorFilter colorFilter) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1383,7 +1383,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setTintList(ColorStateList tint) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1395,7 +1395,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void setTintMode(Mode tintMode) { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1406,7 +1406,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { private Drawable getFirstNonNullDrawable() { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading Loading @@ -1444,7 +1444,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { mLayerState.mAutoMirrored = mirrored; final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1461,7 +1461,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Override public void jumpToCurrentState() { final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1480,7 +1480,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { boolean changed = false; final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null && dr.isStateful() && dr.setState(state)) { Loading @@ -1501,7 +1501,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { boolean changed = false; final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null && dr.setLevel(level)) { Loading Loading @@ -1543,7 +1543,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { final boolean isPaddingNested = mLayerState.mPaddingMode == PADDING_MODE_NEST; final ChildDrawable[] array = mLayerState.mChildren; for (int i = 0, count = mLayerState.mNum; i < count; i++) { for (int i = 0, count = mLayerState.mNumChildren; i < count; i++) { final ChildDrawable r = array[i]; final Drawable d = r.mDrawable; if (d == null) { Loading Loading @@ -1642,7 +1642,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { final boolean nest = mLayerState.mPaddingMode == PADDING_MODE_NEST; final boolean isLayoutRtl = getLayoutDirection() == LayoutDirection.RTL; final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final ChildDrawable r = array[i]; if (r.mDrawable == null) { Loading Loading @@ -1684,7 +1684,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { final boolean nest = mLayerState.mPaddingMode == PADDING_MODE_NEST; final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final ChildDrawable r = array[i]; if (r.mDrawable == null) { Loading Loading @@ -1733,7 +1733,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { * Ensures the child padding caches are large enough. */ void ensurePadding() { final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; if (mPaddingL != null && mPaddingL.length >= N) { return; } Loading @@ -1745,7 +1745,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } void refreshPadding() { final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; final ChildDrawable[] array = mLayerState.mChildren; for (int i = 0; i < N; i++) { refreshChildPadding(i, array[i]); Loading @@ -1766,7 +1766,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { if (!mMutated && super.mutate() == this) { mLayerState = createConstantState(mLayerState, null); final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1785,7 +1785,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { super.clearMutated(); final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading @@ -1800,7 +1800,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { boolean changed = false; final ChildDrawable[] array = mLayerState.mChildren; final int N = mLayerState.mNum; final int N = mLayerState.mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null) { Loading Loading @@ -1905,7 +1905,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { static class LayerState extends ConstantState { private int[] mThemeAttrs; int mNum; int mNumChildren; ChildDrawable[] mChildren; int mDensity; Loading @@ -1922,10 +1922,10 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { @Config int mChangingConfigurations; @Config int mChildrenChangingConfigurations; private boolean mHaveOpacity; private boolean mCheckedOpacity; private int mOpacity; private boolean mHaveIsStateful; private boolean mCheckedStateful; private boolean mIsStateful; private boolean mAutoMirrored = false; Loading @@ -1938,9 +1938,9 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { if (orig != null) { final ChildDrawable[] origChildDrawable = orig.mChildren; final int N = orig.mNum; final int N = orig.mNumChildren; mNum = N; mNumChildren = N; mChildren = new ChildDrawable[N]; mChangingConfigurations = orig.mChangingConfigurations; Loading @@ -1951,9 +1951,9 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { mChildren[i] = new ChildDrawable(or, owner, res); } mHaveOpacity = orig.mHaveOpacity; mCheckedOpacity = orig.mCheckedOpacity; mOpacity = orig.mOpacity; mHaveIsStateful = orig.mHaveIsStateful; mCheckedStateful = orig.mCheckedStateful; mIsStateful = orig.mIsStateful; mAutoMirrored = orig.mAutoMirrored; mPaddingMode = orig.mPaddingMode; Loading @@ -1970,7 +1970,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { applyDensityScaling(orig.mDensity, mDensity); } } else { mNum = 0; mNumChildren = 0; mChildren = null; } } Loading Loading @@ -2022,7 +2022,7 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } final ChildDrawable[] array = mChildren; final int N = mNum; final int N = mNumChildren; for (int i = 0; i < N; i++) { final ChildDrawable layer = array[i]; if (layer.canApplyTheme()) { Loading Loading @@ -2050,12 +2050,12 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } public final int getOpacity() { if (mHaveOpacity) { if (mCheckedOpacity) { return mOpacity; } final int N = mNumChildren; final ChildDrawable[] array = mChildren; final int N = mNum; // Seek to the first non-null drawable. int firstIndex = -1; Loading @@ -2082,17 +2082,17 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } mOpacity = op; mHaveOpacity = true; mCheckedOpacity = true; return op; } public final boolean isStateful() { if (mHaveIsStateful) { if (mCheckedStateful) { return mIsStateful; } final int N = mNumChildren; final ChildDrawable[] array = mChildren; final int N = mNum; boolean isStateful = false; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; Loading @@ -2103,13 +2103,13 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } mIsStateful = isStateful; mHaveIsStateful = true; mCheckedStateful = true; return isStateful; } public final boolean canConstantState() { final ChildDrawable[] array = mChildren; final int N = mNum; final int N = mNumChildren; for (int i = 0; i < N; i++) { final Drawable dr = array[i].mDrawable; if (dr != null && dr.getConstantState() == null) { Loading @@ -2122,8 +2122,8 @@ public class LayerDrawable extends Drawable implements Drawable.Callback { } public void invalidateCache() { mHaveOpacity = false; mHaveIsStateful = false; mCheckedOpacity = false; mCheckedStateful = false; } } Loading
graphics/java/android/graphics/drawable/RippleDrawable.java +4 −4 Original line number Diff line number Diff line Loading @@ -667,7 +667,7 @@ public class RippleDrawable extends LayerDrawable { public void getOutline(@NonNull Outline outline) { final LayerState state = mLayerState; final ChildDrawable[] children = state.mChildren; final int N = state.mNum; final int N = state.mNumChildren; for (int i = 0; i < N; i++) { if (children[i].mId != R.id.mask) { children[i].mDrawable.getOutline(outline); Loading Loading @@ -815,7 +815,7 @@ public class RippleDrawable extends LayerDrawable { // Check for non-opaque, non-mask content. final ChildDrawable[] array = mLayerState.mChildren; final int count = mLayerState.mNum; final int count = mLayerState.mNumChildren; for (int i = 0; i < count; i++) { if (array[i].mDrawable.getOpacity() != PixelFormat.OPAQUE) { return MASK_CONTENT; Loading @@ -829,7 +829,7 @@ public class RippleDrawable extends LayerDrawable { private void drawContent(Canvas canvas) { // Draw everything except the mask. final ChildDrawable[] array = mLayerState.mChildren; final int count = mLayerState.mNum; final int count = mLayerState.mNumChildren; for (int i = 0; i < count; i++) { if (array[i].mId != R.id.mask) { array[i].mDrawable.draw(canvas); Loading Loading @@ -1045,7 +1045,7 @@ public class RippleDrawable extends LayerDrawable { mLayerState = mState; mDensity = Drawable.resolveDensity(res, mState.mDensity); if (mState.mNum > 0) { if (mState.mNumChildren > 0) { ensurePadding(); refreshPadding(); } Loading