jimu-decompiled/sources/androidx/appcompat/graphics/drawable/StateListDrawable.java
2025-05-13 19:24:51 +02:00

149 lines
5.0 KiB
Java

package androidx.appcompat.graphics.drawable;
import android.content.res.Resources;
import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
import android.util.StateSet;
import androidx.appcompat.graphics.drawable.DrawableContainer;
/* loaded from: classes.dex */
class StateListDrawable extends DrawableContainer {
private StateListState m;
private boolean n;
static class StateListState extends DrawableContainer.DrawableContainerState {
int[][] J;
StateListState(StateListState stateListState, StateListDrawable stateListDrawable, Resources resources) {
super(stateListState, stateListDrawable, resources);
if (stateListState != null) {
this.J = stateListState.J;
} else {
this.J = new int[c()][];
}
}
int a(int[] iArr, Drawable drawable) {
int a = a(drawable);
this.J[a] = iArr;
return a;
}
@Override // androidx.appcompat.graphics.drawable.DrawableContainer.DrawableContainerState
void m() {
int[][] iArr = this.J;
int[][] iArr2 = new int[iArr.length][];
for (int length = iArr.length - 1; length >= 0; length--) {
int[][] iArr3 = this.J;
iArr2[length] = iArr3[length] != null ? (int[]) iArr3[length].clone() : null;
}
this.J = iArr2;
}
@Override // android.graphics.drawable.Drawable.ConstantState
public Drawable newDrawable() {
return new StateListDrawable(this, null);
}
@Override // android.graphics.drawable.Drawable.ConstantState
public Drawable newDrawable(Resources resources) {
return new StateListDrawable(this, resources);
}
int a(int[] iArr) {
int[][] iArr2 = this.J;
int d = d();
for (int i = 0; i < d; i++) {
if (StateSet.stateSetMatches(iArr2[i], iArr)) {
return i;
}
}
return -1;
}
@Override // androidx.appcompat.graphics.drawable.DrawableContainer.DrawableContainerState
public void a(int i, int i2) {
super.a(i, i2);
int[][] iArr = new int[i2][];
System.arraycopy(this.J, 0, iArr, 0, i);
this.J = iArr;
}
}
StateListDrawable(StateListState stateListState, Resources resources) {
a(new StateListState(stateListState, this, resources));
onStateChange(getState());
}
@Override // androidx.appcompat.graphics.drawable.DrawableContainer, android.graphics.drawable.Drawable
public void applyTheme(Resources.Theme theme) {
super.applyTheme(theme);
onStateChange(getState());
}
@Override // android.graphics.drawable.Drawable
public boolean isStateful() {
return true;
}
@Override // androidx.appcompat.graphics.drawable.DrawableContainer, android.graphics.drawable.Drawable
public Drawable mutate() {
if (!this.n) {
super.mutate();
if (this == this) {
this.m.m();
this.n = true;
}
}
return this;
}
@Override // androidx.appcompat.graphics.drawable.DrawableContainer, android.graphics.drawable.Drawable
protected boolean onStateChange(int[] iArr) {
boolean onStateChange = super.onStateChange(iArr);
int a = this.m.a(iArr);
if (a < 0) {
a = this.m.a(StateSet.WILD_CARD);
}
return a(a) || onStateChange;
}
int[] a(AttributeSet attributeSet) {
int attributeCount = attributeSet.getAttributeCount();
int[] iArr = new int[attributeCount];
int i = 0;
for (int i2 = 0; i2 < attributeCount; i2++) {
int attributeNameResource = attributeSet.getAttributeNameResource(i2);
if (attributeNameResource != 0 && attributeNameResource != 16842960 && attributeNameResource != 16843161) {
int i3 = i + 1;
if (!attributeSet.getAttributeBooleanValue(i2, false)) {
attributeNameResource = -attributeNameResource;
}
iArr[i] = attributeNameResource;
i = i3;
}
}
return StateSet.trimStateSet(iArr, i);
}
StateListDrawable(StateListState stateListState) {
if (stateListState != null) {
a(stateListState);
}
}
/* JADX INFO: Access modifiers changed from: package-private */
@Override // androidx.appcompat.graphics.drawable.DrawableContainer
public StateListState a() {
return new StateListState(this.m, this, null);
}
@Override // androidx.appcompat.graphics.drawable.DrawableContainer
protected void a(DrawableContainer.DrawableContainerState drawableContainerState) {
super.a(drawableContainerState);
if (drawableContainerState instanceof StateListState) {
this.m = (StateListState) drawableContainerState;
}
}
}