jimu-decompiled/sources/androidx/appcompat/widget/DrawableUtils.java
2025-05-13 19:24:51 +02:00

100 lines
3.2 KiB
Java

package androidx.appcompat.widget;
import android.graphics.PorterDuff;
import android.graphics.Rect;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.DrawableContainer;
import android.graphics.drawable.GradientDrawable;
import android.graphics.drawable.InsetDrawable;
import android.graphics.drawable.LayerDrawable;
import android.graphics.drawable.ScaleDrawable;
import android.os.Build;
import androidx.appcompat.graphics.drawable.DrawableWrapper;
import androidx.core.graphics.drawable.WrappedDrawable;
/* loaded from: classes.dex */
public class DrawableUtils {
static {
new Rect();
if (Build.VERSION.SDK_INT >= 18) {
try {
Class.forName("android.graphics.Insets");
} catch (ClassNotFoundException unused) {
}
}
}
/* JADX WARN: Multi-variable type inference failed */
public static boolean a(Drawable drawable) {
if (Build.VERSION.SDK_INT < 15 && (drawable instanceof InsetDrawable)) {
return false;
}
if (Build.VERSION.SDK_INT < 15 && (drawable instanceof GradientDrawable)) {
return false;
}
if (Build.VERSION.SDK_INT < 17 && (drawable instanceof LayerDrawable)) {
return false;
}
if (!(drawable instanceof DrawableContainer)) {
if (drawable instanceof WrappedDrawable) {
return a(((WrappedDrawable) drawable).a());
}
if (drawable instanceof DrawableWrapper) {
return a(((DrawableWrapper) drawable).a());
}
if (drawable instanceof ScaleDrawable) {
return a(((ScaleDrawable) drawable).getDrawable());
}
return true;
}
Drawable.ConstantState constantState = drawable.getConstantState();
if (!(constantState instanceof DrawableContainer.DrawableContainerState)) {
return true;
}
for (Drawable drawable2 : ((DrawableContainer.DrawableContainerState) constantState).getChildren()) {
if (!a(drawable2)) {
return false;
}
}
return true;
}
static void b(Drawable drawable) {
if (Build.VERSION.SDK_INT == 21 && "android.graphics.drawable.VectorDrawable".equals(drawable.getClass().getName())) {
c(drawable);
}
}
private static void c(Drawable drawable) {
int[] state = drawable.getState();
if (state == null || state.length == 0) {
drawable.setState(ThemeUtils.e);
} else {
drawable.setState(ThemeUtils.f);
}
drawable.setState(state);
}
public static PorterDuff.Mode a(int i, PorterDuff.Mode mode) {
if (i == 3) {
return PorterDuff.Mode.SRC_OVER;
}
if (i == 5) {
return PorterDuff.Mode.SRC_IN;
}
if (i != 9) {
switch (i) {
case 14:
return PorterDuff.Mode.MULTIPLY;
case 15:
return PorterDuff.Mode.SCREEN;
case 16:
return PorterDuff.Mode.ADD;
default:
return mode;
}
}
return PorterDuff.Mode.SRC_ATOP;
}
}