package androidx.vectordrawable.graphics.drawable; import android.content.res.ColorStateList; import android.content.res.Resources; import android.content.res.TypedArray; import android.content.res.XmlResourceParser; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.ColorFilter; import android.graphics.Matrix; import android.graphics.Paint; import android.graphics.Path; import android.graphics.PathMeasure; import android.graphics.PorterDuff; import android.graphics.PorterDuffColorFilter; import android.graphics.Rect; import android.graphics.Shader; import android.graphics.drawable.Drawable; import android.graphics.drawable.VectorDrawable; import android.os.Build; import android.util.AttributeSet; import android.util.Log; import android.util.Xml; import androidx.collection.ArrayMap; import androidx.core.content.res.ComplexColorCompat; import androidx.core.content.res.ResourcesCompat; import androidx.core.content.res.TypedArrayUtils; import androidx.core.graphics.PathParser; import androidx.core.graphics.drawable.DrawableCompat; import com.liulishuo.filedownloader.model.FileDownloadModel; import java.io.IOException; import java.util.ArrayDeque; import java.util.ArrayList; import org.xmlpull.v1.XmlPullParser; import org.xmlpull.v1.XmlPullParserException; /* loaded from: classes.dex */ public class VectorDrawableCompat extends VectorDrawableCommon { static final PorterDuff.Mode j = PorterDuff.Mode.SRC_IN; private VectorDrawableCompatState b; private PorterDuffColorFilter c; private ColorFilter d; private boolean e; private boolean f; private final float[] g; private final Matrix h; private final Rect i; private static class VClipPath extends VPath { public VClipPath() { } public void a(Resources resources, AttributeSet attributeSet, Resources.Theme theme, XmlPullParser xmlPullParser) { if (TypedArrayUtils.a(xmlPullParser, "pathData")) { TypedArray a = TypedArrayUtils.a(resources, theme, attributeSet, AndroidResources.d); a(a); a.recycle(); } } @Override // androidx.vectordrawable.graphics.drawable.VectorDrawableCompat.VPath public boolean b() { return true; } public VClipPath(VClipPath vClipPath) { super(vClipPath); } private void a(TypedArray typedArray) { String string = typedArray.getString(0); if (string != null) { this.b = string; } String string2 = typedArray.getString(1); if (string2 != null) { this.a = PathParser.a(string2); } } } private static abstract class VObject { private VObject() { } public boolean a() { return false; } public boolean a(int[] iArr) { return false; } } private static class VectorDrawableCompatState extends Drawable.ConstantState { int a; VPathRenderer b; ColorStateList c; PorterDuff.Mode d; boolean e; Bitmap f; ColorStateList g; PorterDuff.Mode h; int i; boolean j; boolean k; Paint l; public VectorDrawableCompatState(VectorDrawableCompatState vectorDrawableCompatState) { this.c = null; this.d = VectorDrawableCompat.j; if (vectorDrawableCompatState != null) { this.a = vectorDrawableCompatState.a; this.b = new VPathRenderer(vectorDrawableCompatState.b); Paint paint = vectorDrawableCompatState.b.e; if (paint != null) { this.b.e = new Paint(paint); } Paint paint2 = vectorDrawableCompatState.b.d; if (paint2 != null) { this.b.d = new Paint(paint2); } this.c = vectorDrawableCompatState.c; this.d = vectorDrawableCompatState.d; this.e = vectorDrawableCompatState.e; } } public void a(Canvas canvas, ColorFilter colorFilter, Rect rect) { canvas.drawBitmap(this.f, (Rect) null, rect, a(colorFilter)); } public boolean b() { return this.b.getRootAlpha() < 255; } public void c(int i, int i2) { this.f.eraseColor(0); this.b.a(new Canvas(this.f), i, i2, (ColorFilter) null); } public void d() { this.g = this.c; this.h = this.d; this.i = this.b.getRootAlpha(); this.j = this.e; this.k = false; } @Override // android.graphics.drawable.Drawable.ConstantState public int getChangingConfigurations() { return this.a; } @Override // android.graphics.drawable.Drawable.ConstantState public Drawable newDrawable() { return new VectorDrawableCompat(this); } public void b(int i, int i2) { if (this.f == null || !a(i, i2)) { this.f = Bitmap.createBitmap(i, i2, Bitmap.Config.ARGB_8888); this.k = true; } } @Override // android.graphics.drawable.Drawable.ConstantState public Drawable newDrawable(Resources resources) { return new VectorDrawableCompat(this); } public Paint a(ColorFilter colorFilter) { if (!b() && colorFilter == null) { return null; } if (this.l == null) { this.l = new Paint(); this.l.setFilterBitmap(true); } this.l.setAlpha(this.b.getRootAlpha()); this.l.setColorFilter(colorFilter); return this.l; } public boolean c() { return this.b.a(); } public boolean a(int i, int i2) { return i == this.f.getWidth() && i2 == this.f.getHeight(); } public boolean a() { return !this.k && this.g == this.c && this.h == this.d && this.j == this.e && this.i == this.b.getRootAlpha(); } public VectorDrawableCompatState() { this.c = null; this.d = VectorDrawableCompat.j; this.b = new VPathRenderer(); } public boolean a(int[] iArr) { boolean a = this.b.a(iArr); this.k |= a; return a; } } VectorDrawableCompat() { this.f = true; this.g = new float[9]; this.h = new Matrix(); this.i = new Rect(); this.b = new VectorDrawableCompatState(); } public static VectorDrawableCompat createFromXmlInner(Resources resources, XmlPullParser xmlPullParser, AttributeSet attributeSet, Resources.Theme theme) throws XmlPullParserException, IOException { VectorDrawableCompat vectorDrawableCompat = new VectorDrawableCompat(); vectorDrawableCompat.inflate(resources, xmlPullParser, attributeSet, theme); return vectorDrawableCompat; } Object a(String str) { return this.b.b.p.get(str); } @Override // android.graphics.drawable.Drawable public boolean canApplyTheme() { Drawable drawable = this.a; if (drawable == null) { return false; } DrawableCompat.a(drawable); return false; } @Override // android.graphics.drawable.Drawable public void draw(Canvas canvas) { Drawable drawable = this.a; if (drawable != null) { drawable.draw(canvas); return; } copyBounds(this.i); if (this.i.width() <= 0 || this.i.height() <= 0) { return; } ColorFilter colorFilter = this.d; if (colorFilter == null) { colorFilter = this.c; } canvas.getMatrix(this.h); this.h.getValues(this.g); float abs = Math.abs(this.g[0]); float abs2 = Math.abs(this.g[4]); float abs3 = Math.abs(this.g[1]); float abs4 = Math.abs(this.g[3]); if (abs3 != 0.0f || abs4 != 0.0f) { abs = 1.0f; abs2 = 1.0f; } int min = Math.min(2048, (int) (this.i.width() * abs)); int min2 = Math.min(2048, (int) (this.i.height() * abs2)); if (min <= 0 || min2 <= 0) { return; } int save = canvas.save(); Rect rect = this.i; canvas.translate(rect.left, rect.top); if (a()) { canvas.translate(this.i.width(), 0.0f); canvas.scale(-1.0f, 1.0f); } this.i.offsetTo(0, 0); this.b.b(min, min2); if (!this.f) { this.b.c(min, min2); } else if (!this.b.a()) { this.b.c(min, min2); this.b.d(); } this.b.a(canvas, colorFilter, this.i); canvas.restoreToCount(save); } @Override // android.graphics.drawable.Drawable public int getAlpha() { Drawable drawable = this.a; return drawable != null ? DrawableCompat.c(drawable) : this.b.b.getRootAlpha(); } @Override // android.graphics.drawable.Drawable public int getChangingConfigurations() { Drawable drawable = this.a; return drawable != null ? drawable.getChangingConfigurations() : super.getChangingConfigurations() | this.b.getChangingConfigurations(); } @Override // android.graphics.drawable.Drawable public Drawable.ConstantState getConstantState() { Drawable drawable = this.a; if (drawable != null && Build.VERSION.SDK_INT >= 24) { return new VectorDrawableDelegateState(drawable.getConstantState()); } this.b.a = getChangingConfigurations(); return this.b; } @Override // android.graphics.drawable.Drawable public int getIntrinsicHeight() { Drawable drawable = this.a; return drawable != null ? drawable.getIntrinsicHeight() : (int) this.b.b.j; } @Override // android.graphics.drawable.Drawable public int getIntrinsicWidth() { Drawable drawable = this.a; return drawable != null ? drawable.getIntrinsicWidth() : (int) this.b.b.i; } @Override // android.graphics.drawable.Drawable public int getOpacity() { Drawable drawable = this.a; if (drawable != null) { return drawable.getOpacity(); } return -3; } @Override // android.graphics.drawable.Drawable public void inflate(Resources resources, XmlPullParser xmlPullParser, AttributeSet attributeSet) throws XmlPullParserException, IOException { Drawable drawable = this.a; if (drawable != null) { drawable.inflate(resources, xmlPullParser, attributeSet); } else { inflate(resources, xmlPullParser, attributeSet, null); } } @Override // android.graphics.drawable.Drawable public void invalidateSelf() { Drawable drawable = this.a; if (drawable != null) { drawable.invalidateSelf(); } else { super.invalidateSelf(); } } @Override // android.graphics.drawable.Drawable public boolean isAutoMirrored() { Drawable drawable = this.a; return drawable != null ? DrawableCompat.f(drawable) : this.b.e; } @Override // android.graphics.drawable.Drawable public boolean isStateful() { VectorDrawableCompatState vectorDrawableCompatState; ColorStateList colorStateList; Drawable drawable = this.a; return drawable != null ? drawable.isStateful() : super.isStateful() || ((vectorDrawableCompatState = this.b) != null && (vectorDrawableCompatState.c() || ((colorStateList = this.b.c) != null && colorStateList.isStateful()))); } @Override // android.graphics.drawable.Drawable public Drawable mutate() { Drawable drawable = this.a; if (drawable != null) { drawable.mutate(); return this; } if (!this.e && super.mutate() == this) { this.b = new VectorDrawableCompatState(this.b); this.e = true; } return this; } @Override // android.graphics.drawable.Drawable protected void onBoundsChange(Rect rect) { Drawable drawable = this.a; if (drawable != null) { drawable.setBounds(rect); } } @Override // android.graphics.drawable.Drawable protected boolean onStateChange(int[] iArr) { PorterDuff.Mode mode; Drawable drawable = this.a; if (drawable != null) { return drawable.setState(iArr); } boolean z = false; VectorDrawableCompatState vectorDrawableCompatState = this.b; ColorStateList colorStateList = vectorDrawableCompatState.c; if (colorStateList != null && (mode = vectorDrawableCompatState.d) != null) { this.c = a(this.c, colorStateList, mode); invalidateSelf(); z = true; } if (!vectorDrawableCompatState.c() || !vectorDrawableCompatState.a(iArr)) { return z; } invalidateSelf(); return true; } @Override // android.graphics.drawable.Drawable public void scheduleSelf(Runnable runnable, long j2) { Drawable drawable = this.a; if (drawable != null) { drawable.scheduleSelf(runnable, j2); } else { super.scheduleSelf(runnable, j2); } } @Override // android.graphics.drawable.Drawable public void setAlpha(int i) { Drawable drawable = this.a; if (drawable != null) { drawable.setAlpha(i); } else if (this.b.b.getRootAlpha() != i) { this.b.b.setRootAlpha(i); invalidateSelf(); } } @Override // android.graphics.drawable.Drawable public void setAutoMirrored(boolean z) { Drawable drawable = this.a; if (drawable != null) { DrawableCompat.a(drawable, z); } else { this.b.e = z; } } @Override // android.graphics.drawable.Drawable, androidx.core.graphics.drawable.TintAwareDrawable public void setTint(int i) { Drawable drawable = this.a; if (drawable != null) { DrawableCompat.b(drawable, i); } else { setTintList(ColorStateList.valueOf(i)); } } @Override // android.graphics.drawable.Drawable, androidx.core.graphics.drawable.TintAwareDrawable public void setTintList(ColorStateList colorStateList) { Drawable drawable = this.a; if (drawable != null) { DrawableCompat.a(drawable, colorStateList); return; } VectorDrawableCompatState vectorDrawableCompatState = this.b; if (vectorDrawableCompatState.c != colorStateList) { vectorDrawableCompatState.c = colorStateList; this.c = a(this.c, colorStateList, vectorDrawableCompatState.d); invalidateSelf(); } } @Override // android.graphics.drawable.Drawable, androidx.core.graphics.drawable.TintAwareDrawable public void setTintMode(PorterDuff.Mode mode) { Drawable drawable = this.a; if (drawable != null) { DrawableCompat.a(drawable, mode); return; } VectorDrawableCompatState vectorDrawableCompatState = this.b; if (vectorDrawableCompatState.d != mode) { vectorDrawableCompatState.d = mode; this.c = a(this.c, vectorDrawableCompatState.c, mode); invalidateSelf(); } } @Override // android.graphics.drawable.Drawable public boolean setVisible(boolean z, boolean z2) { Drawable drawable = this.a; return drawable != null ? drawable.setVisible(z, z2) : super.setVisible(z, z2); } @Override // android.graphics.drawable.Drawable public void unscheduleSelf(Runnable runnable) { Drawable drawable = this.a; if (drawable != null) { drawable.unscheduleSelf(runnable); } else { super.unscheduleSelf(runnable); } } private static abstract class VPath extends VObject { protected PathParser.PathDataNode[] a; String b; int c; public VPath() { super(); this.a = null; } public void a(Path path) { path.reset(); PathParser.PathDataNode[] pathDataNodeArr = this.a; if (pathDataNodeArr != null) { PathParser.PathDataNode.a(pathDataNodeArr, path); } } public boolean b() { return false; } public PathParser.PathDataNode[] getPathData() { return this.a; } public String getPathName() { return this.b; } public void setPathData(PathParser.PathDataNode[] pathDataNodeArr) { if (PathParser.a(this.a, pathDataNodeArr)) { PathParser.b(this.a, pathDataNodeArr); } else { this.a = PathParser.a(pathDataNodeArr); } } public VPath(VPath vPath) { super(); this.a = null; this.b = vPath.b; this.c = vPath.c; this.a = PathParser.a(vPath.a); } } private static class VectorDrawableDelegateState extends Drawable.ConstantState { private final Drawable.ConstantState a; public VectorDrawableDelegateState(Drawable.ConstantState constantState) { this.a = constantState; } @Override // android.graphics.drawable.Drawable.ConstantState public boolean canApplyTheme() { return this.a.canApplyTheme(); } @Override // android.graphics.drawable.Drawable.ConstantState public int getChangingConfigurations() { return this.a.getChangingConfigurations(); } @Override // android.graphics.drawable.Drawable.ConstantState public Drawable newDrawable() { VectorDrawableCompat vectorDrawableCompat = new VectorDrawableCompat(); vectorDrawableCompat.a = (VectorDrawable) this.a.newDrawable(); return vectorDrawableCompat; } @Override // android.graphics.drawable.Drawable.ConstantState public Drawable newDrawable(Resources resources) { VectorDrawableCompat vectorDrawableCompat = new VectorDrawableCompat(); vectorDrawableCompat.a = (VectorDrawable) this.a.newDrawable(resources); return vectorDrawableCompat; } @Override // android.graphics.drawable.Drawable.ConstantState public Drawable newDrawable(Resources resources, Resources.Theme theme) { VectorDrawableCompat vectorDrawableCompat = new VectorDrawableCompat(); vectorDrawableCompat.a = (VectorDrawable) this.a.newDrawable(resources, theme); return vectorDrawableCompat; } } PorterDuffColorFilter a(PorterDuffColorFilter porterDuffColorFilter, ColorStateList colorStateList, PorterDuff.Mode mode) { if (colorStateList == null || mode == null) { return null; } return new PorterDuffColorFilter(colorStateList.getColorForState(getState(), 0), mode); } @Override // android.graphics.drawable.Drawable public void setColorFilter(ColorFilter colorFilter) { Drawable drawable = this.a; if (drawable != null) { drawable.setColorFilter(colorFilter); } else { this.d = colorFilter; invalidateSelf(); } } private static class VFullPath extends VPath { private int[] d; ComplexColorCompat e; float f; ComplexColorCompat g; float h; int i; float j; float k; float l; float m; Paint.Cap n; Paint.Join o; float p; public VFullPath() { this.f = 0.0f; this.h = 1.0f; this.i = 0; this.j = 1.0f; this.k = 0.0f; this.l = 1.0f; this.m = 0.0f; this.n = Paint.Cap.BUTT; this.o = Paint.Join.MITER; this.p = 4.0f; } private Paint.Cap a(int i, Paint.Cap cap) { return i != 0 ? i != 1 ? i != 2 ? cap : Paint.Cap.SQUARE : Paint.Cap.ROUND : Paint.Cap.BUTT; } float getFillAlpha() { return this.j; } int getFillColor() { return this.g.a(); } float getStrokeAlpha() { return this.h; } int getStrokeColor() { return this.e.a(); } float getStrokeWidth() { return this.f; } float getTrimPathEnd() { return this.l; } float getTrimPathOffset() { return this.m; } float getTrimPathStart() { return this.k; } void setFillAlpha(float f) { this.j = f; } void setFillColor(int i) { this.g.a(i); } void setStrokeAlpha(float f) { this.h = f; } void setStrokeColor(int i) { this.e.a(i); } void setStrokeWidth(float f) { this.f = f; } void setTrimPathEnd(float f) { this.l = f; } void setTrimPathOffset(float f) { this.m = f; } void setTrimPathStart(float f) { this.k = f; } private Paint.Join a(int i, Paint.Join join) { if (i == 0) { return Paint.Join.MITER; } if (i != 1) { return i != 2 ? join : Paint.Join.BEVEL; } return Paint.Join.ROUND; } public void a(Resources resources, AttributeSet attributeSet, Resources.Theme theme, XmlPullParser xmlPullParser) { TypedArray a = TypedArrayUtils.a(resources, theme, attributeSet, AndroidResources.c); a(a, xmlPullParser, theme); a.recycle(); } private void a(TypedArray typedArray, XmlPullParser xmlPullParser, Resources.Theme theme) { this.d = null; if (TypedArrayUtils.a(xmlPullParser, "pathData")) { String string = typedArray.getString(0); if (string != null) { this.b = string; } String string2 = typedArray.getString(2); if (string2 != null) { this.a = PathParser.a(string2); } this.g = TypedArrayUtils.a(typedArray, xmlPullParser, theme, "fillColor", 1, 0); this.j = TypedArrayUtils.a(typedArray, xmlPullParser, "fillAlpha", 12, this.j); this.n = a(TypedArrayUtils.b(typedArray, xmlPullParser, "strokeLineCap", 8, -1), this.n); this.o = a(TypedArrayUtils.b(typedArray, xmlPullParser, "strokeLineJoin", 9, -1), this.o); this.p = TypedArrayUtils.a(typedArray, xmlPullParser, "strokeMiterLimit", 10, this.p); this.e = TypedArrayUtils.a(typedArray, xmlPullParser, theme, "strokeColor", 3, 0); this.h = TypedArrayUtils.a(typedArray, xmlPullParser, "strokeAlpha", 11, this.h); this.f = TypedArrayUtils.a(typedArray, xmlPullParser, "strokeWidth", 4, this.f); this.l = TypedArrayUtils.a(typedArray, xmlPullParser, "trimPathEnd", 6, this.l); this.m = TypedArrayUtils.a(typedArray, xmlPullParser, "trimPathOffset", 7, this.m); this.k = TypedArrayUtils.a(typedArray, xmlPullParser, "trimPathStart", 5, this.k); this.i = TypedArrayUtils.b(typedArray, xmlPullParser, "fillType", 13, this.i); } } public VFullPath(VFullPath vFullPath) { super(vFullPath); this.f = 0.0f; this.h = 1.0f; this.i = 0; this.j = 1.0f; this.k = 0.0f; this.l = 1.0f; this.m = 0.0f; this.n = Paint.Cap.BUTT; this.o = Paint.Join.MITER; this.p = 4.0f; this.d = vFullPath.d; this.e = vFullPath.e; this.f = vFullPath.f; this.h = vFullPath.h; this.g = vFullPath.g; this.i = vFullPath.i; this.j = vFullPath.j; this.k = vFullPath.k; this.l = vFullPath.l; this.m = vFullPath.m; this.n = vFullPath.n; this.o = vFullPath.o; this.p = vFullPath.p; } @Override // androidx.vectordrawable.graphics.drawable.VectorDrawableCompat.VObject public boolean a() { return this.g.d() || this.e.d(); } @Override // androidx.vectordrawable.graphics.drawable.VectorDrawableCompat.VObject public boolean a(int[] iArr) { return this.e.a(iArr) | this.g.a(iArr); } } private static class VGroup extends VObject { final Matrix a; final ArrayList b; float c; private float d; private float e; private float f; private float g; private float h; private float i; final Matrix j; int k; private int[] l; private String m; public VGroup(VGroup vGroup, ArrayMap arrayMap) { super(); VPath vClipPath; this.a = new Matrix(); this.b = new ArrayList<>(); this.c = 0.0f; this.d = 0.0f; this.e = 0.0f; this.f = 1.0f; this.g = 1.0f; this.h = 0.0f; this.i = 0.0f; this.j = new Matrix(); this.m = null; this.c = vGroup.c; this.d = vGroup.d; this.e = vGroup.e; this.f = vGroup.f; this.g = vGroup.g; this.h = vGroup.h; this.i = vGroup.i; this.l = vGroup.l; this.m = vGroup.m; this.k = vGroup.k; String str = this.m; if (str != null) { arrayMap.put(str, this); } this.j.set(vGroup.j); ArrayList arrayList = vGroup.b; for (int i = 0; i < arrayList.size(); i++) { VObject vObject = arrayList.get(i); if (vObject instanceof VGroup) { this.b.add(new VGroup((VGroup) vObject, arrayMap)); } else { if (vObject instanceof VFullPath) { vClipPath = new VFullPath((VFullPath) vObject); } else { if (!(vObject instanceof VClipPath)) { throw new IllegalStateException("Unknown object in the tree!"); } vClipPath = new VClipPath((VClipPath) vObject); } this.b.add(vClipPath); String str2 = vClipPath.b; if (str2 != null) { arrayMap.put(str2, vClipPath); } } } } private void b() { this.j.reset(); this.j.postTranslate(-this.d, -this.e); this.j.postScale(this.f, this.g); this.j.postRotate(this.c, 0.0f, 0.0f); this.j.postTranslate(this.h + this.d, this.i + this.e); } public void a(Resources resources, AttributeSet attributeSet, Resources.Theme theme, XmlPullParser xmlPullParser) { TypedArray a = TypedArrayUtils.a(resources, theme, attributeSet, AndroidResources.b); a(a, xmlPullParser); a.recycle(); } public String getGroupName() { return this.m; } public Matrix getLocalMatrix() { return this.j; } public float getPivotX() { return this.d; } public float getPivotY() { return this.e; } public float getRotation() { return this.c; } public float getScaleX() { return this.f; } public float getScaleY() { return this.g; } public float getTranslateX() { return this.h; } public float getTranslateY() { return this.i; } public void setPivotX(float f) { if (f != this.d) { this.d = f; b(); } } public void setPivotY(float f) { if (f != this.e) { this.e = f; b(); } } public void setRotation(float f) { if (f != this.c) { this.c = f; b(); } } public void setScaleX(float f) { if (f != this.f) { this.f = f; b(); } } public void setScaleY(float f) { if (f != this.g) { this.g = f; b(); } } public void setTranslateX(float f) { if (f != this.h) { this.h = f; b(); } } public void setTranslateY(float f) { if (f != this.i) { this.i = f; b(); } } private void a(TypedArray typedArray, XmlPullParser xmlPullParser) { this.l = null; this.c = TypedArrayUtils.a(typedArray, xmlPullParser, "rotation", 5, this.c); this.d = typedArray.getFloat(1, this.d); this.e = typedArray.getFloat(2, this.e); this.f = TypedArrayUtils.a(typedArray, xmlPullParser, "scaleX", 3, this.f); this.g = TypedArrayUtils.a(typedArray, xmlPullParser, "scaleY", 4, this.g); this.h = TypedArrayUtils.a(typedArray, xmlPullParser, "translateX", 6, this.h); this.i = TypedArrayUtils.a(typedArray, xmlPullParser, "translateY", 7, this.i); String string = typedArray.getString(0); if (string != null) { this.m = string; } b(); } @Override // androidx.vectordrawable.graphics.drawable.VectorDrawableCompat.VObject public boolean a() { for (int i = 0; i < this.b.size(); i++) { if (this.b.get(i).a()) { return true; } } return false; } @Override // androidx.vectordrawable.graphics.drawable.VectorDrawableCompat.VObject public boolean a(int[] iArr) { boolean z = false; for (int i = 0; i < this.b.size(); i++) { z |= this.b.get(i).a(iArr); } return z; } public VGroup() { super(); this.a = new Matrix(); this.b = new ArrayList<>(); this.c = 0.0f; this.d = 0.0f; this.e = 0.0f; this.f = 1.0f; this.g = 1.0f; this.h = 0.0f; this.i = 0.0f; this.j = new Matrix(); this.m = null; } } public static VectorDrawableCompat a(Resources resources, int i, Resources.Theme theme) { int next; if (Build.VERSION.SDK_INT >= 24) { VectorDrawableCompat vectorDrawableCompat = new VectorDrawableCompat(); vectorDrawableCompat.a = ResourcesCompat.a(resources, i, theme); new VectorDrawableDelegateState(vectorDrawableCompat.a.getConstantState()); return vectorDrawableCompat; } try { XmlResourceParser xml = resources.getXml(i); AttributeSet asAttributeSet = Xml.asAttributeSet(xml); do { next = xml.next(); if (next == 2) { break; } } while (next != 1); if (next == 2) { return createFromXmlInner(resources, (XmlPullParser) xml, asAttributeSet, theme); } throw new XmlPullParserException("No start tag found"); } catch (IOException e) { Log.e("VectorDrawableCompat", "parser error", e); return null; } catch (XmlPullParserException e2) { Log.e("VectorDrawableCompat", "parser error", e2); return null; } } @Override // android.graphics.drawable.Drawable public void inflate(Resources resources, XmlPullParser xmlPullParser, AttributeSet attributeSet, Resources.Theme theme) throws XmlPullParserException, IOException { Drawable drawable = this.a; if (drawable != null) { DrawableCompat.a(drawable, resources, xmlPullParser, attributeSet, theme); return; } VectorDrawableCompatState vectorDrawableCompatState = this.b; vectorDrawableCompatState.b = new VPathRenderer(); TypedArray a = TypedArrayUtils.a(resources, theme, attributeSet, AndroidResources.a); a(a, xmlPullParser); a.recycle(); vectorDrawableCompatState.a = getChangingConfigurations(); vectorDrawableCompatState.k = true; a(resources, xmlPullParser, attributeSet, theme); this.c = a(this.c, vectorDrawableCompatState.c, vectorDrawableCompatState.d); } VectorDrawableCompat(VectorDrawableCompatState vectorDrawableCompatState) { this.f = true; this.g = new float[9]; this.h = new Matrix(); this.i = new Rect(); this.b = vectorDrawableCompatState; this.c = a(this.c, vectorDrawableCompatState.c, vectorDrawableCompatState.d); } private static class VPathRenderer { private static final Matrix q = new Matrix(); private final Path a; private final Path b; private final Matrix c; Paint d; Paint e; private PathMeasure f; private int g; final VGroup h; float i; float j; float k; float l; int m; String n; Boolean o; final ArrayMap p; public VPathRenderer() { this.c = new Matrix(); this.i = 0.0f; this.j = 0.0f; this.k = 0.0f; this.l = 0.0f; this.m = 255; this.n = null; this.o = null; this.p = new ArrayMap<>(); this.h = new VGroup(); this.a = new Path(); this.b = new Path(); } private static float a(float f, float f2, float f3, float f4) { return (f * f4) - (f2 * f3); } private void a(VGroup vGroup, Matrix matrix, Canvas canvas, int i, int i2, ColorFilter colorFilter) { vGroup.a.set(matrix); vGroup.a.preConcat(vGroup.j); canvas.save(); for (int i3 = 0; i3 < vGroup.b.size(); i3++) { VObject vObject = vGroup.b.get(i3); if (vObject instanceof VGroup) { a((VGroup) vObject, vGroup.a, canvas, i, i2, colorFilter); } else if (vObject instanceof VPath) { a(vGroup, (VPath) vObject, canvas, i, i2, colorFilter); } } canvas.restore(); } public float getAlpha() { return getRootAlpha() / 255.0f; } public int getRootAlpha() { return this.m; } public void setAlpha(float f) { setRootAlpha((int) (f * 255.0f)); } public void setRootAlpha(int i) { this.m = i; } public void a(Canvas canvas, int i, int i2, ColorFilter colorFilter) { a(this.h, q, canvas, i, i2, colorFilter); } public VPathRenderer(VPathRenderer vPathRenderer) { this.c = new Matrix(); this.i = 0.0f; this.j = 0.0f; this.k = 0.0f; this.l = 0.0f; this.m = 255; this.n = null; this.o = null; this.p = new ArrayMap<>(); this.h = new VGroup(vPathRenderer.h, this.p); this.a = new Path(vPathRenderer.a); this.b = new Path(vPathRenderer.b); this.i = vPathRenderer.i; this.j = vPathRenderer.j; this.k = vPathRenderer.k; this.l = vPathRenderer.l; this.g = vPathRenderer.g; this.m = vPathRenderer.m; this.n = vPathRenderer.n; String str = vPathRenderer.n; if (str != null) { this.p.put(str, this); } this.o = vPathRenderer.o; } private void a(VGroup vGroup, VPath vPath, Canvas canvas, int i, int i2, ColorFilter colorFilter) { float f = i / this.k; float f2 = i2 / this.l; float min = Math.min(f, f2); Matrix matrix = vGroup.a; this.c.set(matrix); this.c.postScale(f, f2); float a = a(matrix); if (a == 0.0f) { return; } vPath.a(this.a); Path path = this.a; this.b.reset(); if (vPath.b()) { this.b.addPath(path, this.c); canvas.clipPath(this.b); return; } VFullPath vFullPath = (VFullPath) vPath; if (vFullPath.k != 0.0f || vFullPath.l != 1.0f) { float f3 = vFullPath.k; float f4 = vFullPath.m; float f5 = (f3 + f4) % 1.0f; float f6 = (vFullPath.l + f4) % 1.0f; if (this.f == null) { this.f = new PathMeasure(); } this.f.setPath(this.a, false); float length = this.f.getLength(); float f7 = f5 * length; float f8 = f6 * length; path.reset(); if (f7 > f8) { this.f.getSegment(f7, length, path, true); this.f.getSegment(0.0f, f8, path, true); } else { this.f.getSegment(f7, f8, path, true); } path.rLineTo(0.0f, 0.0f); } this.b.addPath(path, this.c); if (vFullPath.g.e()) { ComplexColorCompat complexColorCompat = vFullPath.g; if (this.e == null) { this.e = new Paint(1); this.e.setStyle(Paint.Style.FILL); } Paint paint = this.e; if (complexColorCompat.c()) { Shader b = complexColorCompat.b(); b.setLocalMatrix(this.c); paint.setShader(b); paint.setAlpha(Math.round(vFullPath.j * 255.0f)); } else { paint.setColor(VectorDrawableCompat.a(complexColorCompat.a(), vFullPath.j)); } paint.setColorFilter(colorFilter); this.b.setFillType(vFullPath.i == 0 ? Path.FillType.WINDING : Path.FillType.EVEN_ODD); canvas.drawPath(this.b, paint); } if (vFullPath.e.e()) { ComplexColorCompat complexColorCompat2 = vFullPath.e; if (this.d == null) { this.d = new Paint(1); this.d.setStyle(Paint.Style.STROKE); } Paint paint2 = this.d; Paint.Join join = vFullPath.o; if (join != null) { paint2.setStrokeJoin(join); } Paint.Cap cap = vFullPath.n; if (cap != null) { paint2.setStrokeCap(cap); } paint2.setStrokeMiter(vFullPath.p); if (complexColorCompat2.c()) { Shader b2 = complexColorCompat2.b(); b2.setLocalMatrix(this.c); paint2.setShader(b2); paint2.setAlpha(Math.round(vFullPath.h * 255.0f)); } else { paint2.setColor(VectorDrawableCompat.a(complexColorCompat2.a(), vFullPath.h)); } paint2.setColorFilter(colorFilter); paint2.setStrokeWidth(vFullPath.f * min * a); canvas.drawPath(this.b, paint2); } } private float a(Matrix matrix) { float[] fArr = {0.0f, 1.0f, 1.0f, 0.0f}; matrix.mapVectors(fArr); float hypot = (float) Math.hypot(fArr[0], fArr[1]); float hypot2 = (float) Math.hypot(fArr[2], fArr[3]); float a = a(fArr[0], fArr[1], fArr[2], fArr[3]); float max = Math.max(hypot, hypot2); if (max > 0.0f) { return Math.abs(a) / max; } return 0.0f; } public boolean a() { if (this.o == null) { this.o = Boolean.valueOf(this.h.a()); } return this.o.booleanValue(); } public boolean a(int[] iArr) { return this.h.a(iArr); } } static int a(int i, float f) { return (i & 16777215) | (((int) (Color.alpha(i) * f)) << 24); } private 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; } private void a(TypedArray typedArray, XmlPullParser xmlPullParser) throws XmlPullParserException { VectorDrawableCompatState vectorDrawableCompatState = this.b; VPathRenderer vPathRenderer = vectorDrawableCompatState.b; vectorDrawableCompatState.d = a(TypedArrayUtils.b(typedArray, xmlPullParser, "tintMode", 6, -1), PorterDuff.Mode.SRC_IN); ColorStateList colorStateList = typedArray.getColorStateList(1); if (colorStateList != null) { vectorDrawableCompatState.c = colorStateList; } vectorDrawableCompatState.e = TypedArrayUtils.a(typedArray, xmlPullParser, "autoMirrored", 5, vectorDrawableCompatState.e); vPathRenderer.k = TypedArrayUtils.a(typedArray, xmlPullParser, "viewportWidth", 7, vPathRenderer.k); vPathRenderer.l = TypedArrayUtils.a(typedArray, xmlPullParser, "viewportHeight", 8, vPathRenderer.l); if (vPathRenderer.k <= 0.0f) { throw new XmlPullParserException(typedArray.getPositionDescription() + " tag requires viewportWidth > 0"); } if (vPathRenderer.l > 0.0f) { vPathRenderer.i = typedArray.getDimension(3, vPathRenderer.i); vPathRenderer.j = typedArray.getDimension(2, vPathRenderer.j); if (vPathRenderer.i <= 0.0f) { throw new XmlPullParserException(typedArray.getPositionDescription() + " tag requires width > 0"); } if (vPathRenderer.j > 0.0f) { vPathRenderer.setAlpha(TypedArrayUtils.a(typedArray, xmlPullParser, "alpha", 4, vPathRenderer.getAlpha())); String string = typedArray.getString(0); if (string != null) { vPathRenderer.n = string; vPathRenderer.p.put(string, vPathRenderer); return; } return; } throw new XmlPullParserException(typedArray.getPositionDescription() + " tag requires height > 0"); } throw new XmlPullParserException(typedArray.getPositionDescription() + " tag requires viewportHeight > 0"); } private void a(Resources resources, XmlPullParser xmlPullParser, AttributeSet attributeSet, Resources.Theme theme) throws XmlPullParserException, IOException { VectorDrawableCompatState vectorDrawableCompatState = this.b; VPathRenderer vPathRenderer = vectorDrawableCompatState.b; ArrayDeque arrayDeque = new ArrayDeque(); arrayDeque.push(vPathRenderer.h); int eventType = xmlPullParser.getEventType(); int depth = xmlPullParser.getDepth() + 1; boolean z = true; while (eventType != 1 && (xmlPullParser.getDepth() >= depth || eventType != 3)) { if (eventType == 2) { String name = xmlPullParser.getName(); VGroup vGroup = (VGroup) arrayDeque.peek(); if (FileDownloadModel.PATH.equals(name)) { VFullPath vFullPath = new VFullPath(); vFullPath.a(resources, attributeSet, theme, xmlPullParser); vGroup.b.add(vFullPath); if (vFullPath.getPathName() != null) { vPathRenderer.p.put(vFullPath.getPathName(), vFullPath); } z = false; vectorDrawableCompatState.a = vFullPath.c | vectorDrawableCompatState.a; } else if ("clip-path".equals(name)) { VClipPath vClipPath = new VClipPath(); vClipPath.a(resources, attributeSet, theme, xmlPullParser); vGroup.b.add(vClipPath); if (vClipPath.getPathName() != null) { vPathRenderer.p.put(vClipPath.getPathName(), vClipPath); } vectorDrawableCompatState.a = vClipPath.c | vectorDrawableCompatState.a; } else if ("group".equals(name)) { VGroup vGroup2 = new VGroup(); vGroup2.a(resources, attributeSet, theme, xmlPullParser); vGroup.b.add(vGroup2); arrayDeque.push(vGroup2); if (vGroup2.getGroupName() != null) { vPathRenderer.p.put(vGroup2.getGroupName(), vGroup2); } vectorDrawableCompatState.a = vGroup2.k | vectorDrawableCompatState.a; } } else if (eventType == 3 && "group".equals(xmlPullParser.getName())) { arrayDeque.pop(); } eventType = xmlPullParser.next(); } if (z) { throw new XmlPullParserException("no path defined"); } } void a(boolean z) { this.f = z; } private boolean a() { return Build.VERSION.SDK_INT >= 17 && isAutoMirrored() && DrawableCompat.e(this) == 1; } }