package com.google.android.material.shape; import android.content.Context; import android.content.res.TypedArray; import android.graphics.RectF; import android.util.AttributeSet; import android.util.TypedValue; import android.view.ContextThemeWrapper; import com.google.android.material.R; /* loaded from: classes2.dex */ public class ShapeAppearanceModel { public static final CornerSize PILL = new RelativeCornerSize(0.5f); EdgeTreatment bottomEdge; CornerTreatment bottomLeftCorner; CornerSize bottomLeftCornerSize; CornerTreatment bottomRightCorner; CornerSize bottomRightCornerSize; EdgeTreatment leftEdge; EdgeTreatment rightEdge; EdgeTreatment topEdge; CornerTreatment topLeftCorner; CornerSize topLeftCornerSize; CornerTreatment topRightCorner; CornerSize topRightCornerSize; /* loaded from: classes2.dex */ public interface CornerSizeUnaryOperator { CornerSize apply(CornerSize cornerSize); } public EdgeTreatment getBottomEdge() { return this.bottomEdge; } public CornerTreatment getBottomLeftCorner() { return this.bottomLeftCorner; } public CornerSize getBottomLeftCornerSize() { return this.bottomLeftCornerSize; } public CornerTreatment getBottomRightCorner() { return this.bottomRightCorner; } public CornerSize getBottomRightCornerSize() { return this.bottomRightCornerSize; } public EdgeTreatment getLeftEdge() { return this.leftEdge; } public EdgeTreatment getRightEdge() { return this.rightEdge; } public EdgeTreatment getTopEdge() { return this.topEdge; } public CornerTreatment getTopLeftCorner() { return this.topLeftCorner; } public CornerSize getTopLeftCornerSize() { return this.topLeftCornerSize; } public CornerTreatment getTopRightCorner() { return this.topRightCorner; } public CornerSize getTopRightCornerSize() { return this.topRightCornerSize; } /* loaded from: classes2.dex */ public static final class Builder { private EdgeTreatment bottomEdge; private CornerTreatment bottomLeftCorner; private CornerSize bottomLeftCornerSize; private CornerTreatment bottomRightCorner; private CornerSize bottomRightCornerSize; private EdgeTreatment leftEdge; private EdgeTreatment rightEdge; private EdgeTreatment topEdge; private CornerTreatment topLeftCorner; private CornerSize topLeftCornerSize; private CornerTreatment topRightCorner; private CornerSize topRightCornerSize; public Builder setBottomEdge(EdgeTreatment edgeTreatment) { this.bottomEdge = edgeTreatment; return this; } public Builder setBottomLeftCornerSize(CornerSize cornerSize) { this.bottomLeftCornerSize = cornerSize; return this; } public Builder setBottomRightCornerSize(CornerSize cornerSize) { this.bottomRightCornerSize = cornerSize; return this; } public Builder setLeftEdge(EdgeTreatment edgeTreatment) { this.leftEdge = edgeTreatment; return this; } public Builder setRightEdge(EdgeTreatment edgeTreatment) { this.rightEdge = edgeTreatment; return this; } public Builder setTopEdge(EdgeTreatment edgeTreatment) { this.topEdge = edgeTreatment; return this; } public Builder setTopLeftCornerSize(CornerSize cornerSize) { this.topLeftCornerSize = cornerSize; return this; } public Builder setTopRightCornerSize(CornerSize cornerSize) { this.topRightCornerSize = cornerSize; return this; } public Builder() { this.topLeftCorner = MaterialShapeUtils.createDefaultCornerTreatment(); this.topRightCorner = MaterialShapeUtils.createDefaultCornerTreatment(); this.bottomRightCorner = MaterialShapeUtils.createDefaultCornerTreatment(); this.bottomLeftCorner = MaterialShapeUtils.createDefaultCornerTreatment(); this.topLeftCornerSize = new AbsoluteCornerSize(0.0f); this.topRightCornerSize = new AbsoluteCornerSize(0.0f); this.bottomRightCornerSize = new AbsoluteCornerSize(0.0f); this.bottomLeftCornerSize = new AbsoluteCornerSize(0.0f); this.topEdge = MaterialShapeUtils.createDefaultEdgeTreatment(); this.rightEdge = MaterialShapeUtils.createDefaultEdgeTreatment(); this.bottomEdge = MaterialShapeUtils.createDefaultEdgeTreatment(); this.leftEdge = MaterialShapeUtils.createDefaultEdgeTreatment(); } public Builder(ShapeAppearanceModel shapeAppearanceModel) { this.topLeftCorner = MaterialShapeUtils.createDefaultCornerTreatment(); this.topRightCorner = MaterialShapeUtils.createDefaultCornerTreatment(); this.bottomRightCorner = MaterialShapeUtils.createDefaultCornerTreatment(); this.bottomLeftCorner = MaterialShapeUtils.createDefaultCornerTreatment(); this.topLeftCornerSize = new AbsoluteCornerSize(0.0f); this.topRightCornerSize = new AbsoluteCornerSize(0.0f); this.bottomRightCornerSize = new AbsoluteCornerSize(0.0f); this.bottomLeftCornerSize = new AbsoluteCornerSize(0.0f); this.topEdge = MaterialShapeUtils.createDefaultEdgeTreatment(); this.rightEdge = MaterialShapeUtils.createDefaultEdgeTreatment(); this.bottomEdge = MaterialShapeUtils.createDefaultEdgeTreatment(); this.leftEdge = MaterialShapeUtils.createDefaultEdgeTreatment(); this.topLeftCorner = shapeAppearanceModel.topLeftCorner; this.topRightCorner = shapeAppearanceModel.topRightCorner; this.bottomRightCorner = shapeAppearanceModel.bottomRightCorner; this.bottomLeftCorner = shapeAppearanceModel.bottomLeftCorner; this.topLeftCornerSize = shapeAppearanceModel.topLeftCornerSize; this.topRightCornerSize = shapeAppearanceModel.topRightCornerSize; this.bottomRightCornerSize = shapeAppearanceModel.bottomRightCornerSize; this.bottomLeftCornerSize = shapeAppearanceModel.bottomLeftCornerSize; this.topEdge = shapeAppearanceModel.topEdge; this.rightEdge = shapeAppearanceModel.rightEdge; this.bottomEdge = shapeAppearanceModel.bottomEdge; this.leftEdge = shapeAppearanceModel.leftEdge; } public Builder setAllCorners(int i, float f) { return setAllCorners(MaterialShapeUtils.createCornerTreatment(i)).setAllCornerSizes(f); } public Builder setAllCorners(CornerTreatment cornerTreatment) { return setTopLeftCorner(cornerTreatment).setTopRightCorner(cornerTreatment).setBottomRightCorner(cornerTreatment).setBottomLeftCorner(cornerTreatment); } public Builder setAllCornerSizes(CornerSize cornerSize) { return setTopLeftCornerSize(cornerSize).setTopRightCornerSize(cornerSize).setBottomRightCornerSize(cornerSize).setBottomLeftCornerSize(cornerSize); } public Builder setAllCornerSizes(float f) { return setTopLeftCornerSize(f).setTopRightCornerSize(f).setBottomRightCornerSize(f).setBottomLeftCornerSize(f); } public Builder setTopLeftCornerSize(float f) { this.topLeftCornerSize = new AbsoluteCornerSize(f); return this; } public Builder setTopRightCornerSize(float f) { this.topRightCornerSize = new AbsoluteCornerSize(f); return this; } public Builder setBottomRightCornerSize(float f) { this.bottomRightCornerSize = new AbsoluteCornerSize(f); return this; } public Builder setBottomLeftCornerSize(float f) { this.bottomLeftCornerSize = new AbsoluteCornerSize(f); return this; } public Builder setTopLeftCorner(int i, float f) { return setTopLeftCorner(MaterialShapeUtils.createCornerTreatment(i)).setTopLeftCornerSize(f); } public Builder setTopLeftCorner(int i, CornerSize cornerSize) { return setTopLeftCorner(MaterialShapeUtils.createCornerTreatment(i)).setTopLeftCornerSize(cornerSize); } public Builder setTopLeftCorner(CornerTreatment cornerTreatment) { this.topLeftCorner = cornerTreatment; float compatCornerTreatmentSize = compatCornerTreatmentSize(cornerTreatment); if (compatCornerTreatmentSize != -1.0f) { setTopLeftCornerSize(compatCornerTreatmentSize); } return this; } public Builder setTopRightCorner(int i, float f) { return setTopRightCorner(MaterialShapeUtils.createCornerTreatment(i)).setTopRightCornerSize(f); } public Builder setTopRightCorner(int i, CornerSize cornerSize) { return setTopRightCorner(MaterialShapeUtils.createCornerTreatment(i)).setTopRightCornerSize(cornerSize); } public Builder setTopRightCorner(CornerTreatment cornerTreatment) { this.topRightCorner = cornerTreatment; float compatCornerTreatmentSize = compatCornerTreatmentSize(cornerTreatment); if (compatCornerTreatmentSize != -1.0f) { setTopRightCornerSize(compatCornerTreatmentSize); } return this; } public Builder setBottomRightCorner(int i, float f) { return setBottomRightCorner(MaterialShapeUtils.createCornerTreatment(i)).setBottomRightCornerSize(f); } public Builder setBottomRightCorner(int i, CornerSize cornerSize) { return setBottomRightCorner(MaterialShapeUtils.createCornerTreatment(i)).setBottomRightCornerSize(cornerSize); } public Builder setBottomRightCorner(CornerTreatment cornerTreatment) { this.bottomRightCorner = cornerTreatment; float compatCornerTreatmentSize = compatCornerTreatmentSize(cornerTreatment); if (compatCornerTreatmentSize != -1.0f) { setBottomRightCornerSize(compatCornerTreatmentSize); } return this; } public Builder setBottomLeftCorner(int i, float f) { return setBottomLeftCorner(MaterialShapeUtils.createCornerTreatment(i)).setBottomLeftCornerSize(f); } public Builder setBottomLeftCorner(int i, CornerSize cornerSize) { return setBottomLeftCorner(MaterialShapeUtils.createCornerTreatment(i)).setBottomLeftCornerSize(cornerSize); } public Builder setBottomLeftCorner(CornerTreatment cornerTreatment) { this.bottomLeftCorner = cornerTreatment; float compatCornerTreatmentSize = compatCornerTreatmentSize(cornerTreatment); if (compatCornerTreatmentSize != -1.0f) { setBottomLeftCornerSize(compatCornerTreatmentSize); } return this; } public Builder setAllEdges(EdgeTreatment edgeTreatment) { return setLeftEdge(edgeTreatment).setTopEdge(edgeTreatment).setRightEdge(edgeTreatment).setBottomEdge(edgeTreatment); } private static float compatCornerTreatmentSize(CornerTreatment cornerTreatment) { if (cornerTreatment instanceof RoundedCornerTreatment) { return ((RoundedCornerTreatment) cornerTreatment).radius; } if (cornerTreatment instanceof CutCornerTreatment) { return ((CutCornerTreatment) cornerTreatment).size; } return -1.0f; } public ShapeAppearanceModel build() { return new ShapeAppearanceModel(this); } } public static Builder builder() { return new Builder(); } public static Builder builder(Context context, AttributeSet attributeSet, int i, int i2) { return builder(context, attributeSet, i, i2, 0); } public static Builder builder(Context context, AttributeSet attributeSet, int i, int i2, int i3) { return builder(context, attributeSet, i, i2, new AbsoluteCornerSize(i3)); } public static Builder builder(Context context, AttributeSet attributeSet, int i, int i2, CornerSize cornerSize) { TypedArray obtainStyledAttributes = context.obtainStyledAttributes(attributeSet, R.styleable.MaterialShape, i, i2); int resourceId = obtainStyledAttributes.getResourceId(R.styleable.MaterialShape_shapeAppearance, 0); int resourceId2 = obtainStyledAttributes.getResourceId(R.styleable.MaterialShape_shapeAppearanceOverlay, 0); obtainStyledAttributes.recycle(); return builder(context, resourceId, resourceId2, cornerSize); } public static Builder builder(Context context, int i, int i2) { return builder(context, i, i2, 0); } private static Builder builder(Context context, int i, int i2, int i3) { return builder(context, i, i2, new AbsoluteCornerSize(i3)); } private static Builder builder(Context context, int i, int i2, CornerSize cornerSize) { ContextThemeWrapper contextThemeWrapper = new ContextThemeWrapper(context, i); if (i2 != 0) { contextThemeWrapper = new ContextThemeWrapper(contextThemeWrapper, i2); } TypedArray obtainStyledAttributes = contextThemeWrapper.obtainStyledAttributes(R.styleable.ShapeAppearance); try { int i3 = obtainStyledAttributes.getInt(R.styleable.ShapeAppearance_cornerFamily, 0); int i4 = obtainStyledAttributes.getInt(R.styleable.ShapeAppearance_cornerFamilyTopLeft, i3); int i5 = obtainStyledAttributes.getInt(R.styleable.ShapeAppearance_cornerFamilyTopRight, i3); int i6 = obtainStyledAttributes.getInt(R.styleable.ShapeAppearance_cornerFamilyBottomRight, i3); int i7 = obtainStyledAttributes.getInt(R.styleable.ShapeAppearance_cornerFamilyBottomLeft, i3); CornerSize cornerSize2 = getCornerSize(obtainStyledAttributes, R.styleable.ShapeAppearance_cornerSize, cornerSize); CornerSize cornerSize3 = getCornerSize(obtainStyledAttributes, R.styleable.ShapeAppearance_cornerSizeTopLeft, cornerSize2); CornerSize cornerSize4 = getCornerSize(obtainStyledAttributes, R.styleable.ShapeAppearance_cornerSizeTopRight, cornerSize2); CornerSize cornerSize5 = getCornerSize(obtainStyledAttributes, R.styleable.ShapeAppearance_cornerSizeBottomRight, cornerSize2); return new Builder().setTopLeftCorner(i4, cornerSize3).setTopRightCorner(i5, cornerSize4).setBottomRightCorner(i6, cornerSize5).setBottomLeftCorner(i7, getCornerSize(obtainStyledAttributes, R.styleable.ShapeAppearance_cornerSizeBottomLeft, cornerSize2)); } finally { obtainStyledAttributes.recycle(); } } private static CornerSize getCornerSize(TypedArray typedArray, int i, CornerSize cornerSize) { TypedValue peekValue = typedArray.peekValue(i); if (peekValue == null) { return cornerSize; } if (peekValue.type == 5) { return new AbsoluteCornerSize(TypedValue.complexToDimensionPixelSize(peekValue.data, typedArray.getResources().getDisplayMetrics())); } return peekValue.type == 6 ? new RelativeCornerSize(peekValue.getFraction(1.0f, 1.0f)) : cornerSize; } private ShapeAppearanceModel(Builder builder) { this.topLeftCorner = builder.topLeftCorner; this.topRightCorner = builder.topRightCorner; this.bottomRightCorner = builder.bottomRightCorner; this.bottomLeftCorner = builder.bottomLeftCorner; this.topLeftCornerSize = builder.topLeftCornerSize; this.topRightCornerSize = builder.topRightCornerSize; this.bottomRightCornerSize = builder.bottomRightCornerSize; this.bottomLeftCornerSize = builder.bottomLeftCornerSize; this.topEdge = builder.topEdge; this.rightEdge = builder.rightEdge; this.bottomEdge = builder.bottomEdge; this.leftEdge = builder.leftEdge; } public ShapeAppearanceModel() { this.topLeftCorner = MaterialShapeUtils.createDefaultCornerTreatment(); this.topRightCorner = MaterialShapeUtils.createDefaultCornerTreatment(); this.bottomRightCorner = MaterialShapeUtils.createDefaultCornerTreatment(); this.bottomLeftCorner = MaterialShapeUtils.createDefaultCornerTreatment(); this.topLeftCornerSize = new AbsoluteCornerSize(0.0f); this.topRightCornerSize = new AbsoluteCornerSize(0.0f); this.bottomRightCornerSize = new AbsoluteCornerSize(0.0f); this.bottomLeftCornerSize = new AbsoluteCornerSize(0.0f); this.topEdge = MaterialShapeUtils.createDefaultEdgeTreatment(); this.rightEdge = MaterialShapeUtils.createDefaultEdgeTreatment(); this.bottomEdge = MaterialShapeUtils.createDefaultEdgeTreatment(); this.leftEdge = MaterialShapeUtils.createDefaultEdgeTreatment(); } public Builder toBuilder() { return new Builder(this); } public ShapeAppearanceModel withCornerSize(float f) { return toBuilder().setAllCornerSizes(f).build(); } public ShapeAppearanceModel withCornerSize(CornerSize cornerSize) { return toBuilder().setAllCornerSizes(cornerSize).build(); } public ShapeAppearanceModel withTransformedCornerSizes(CornerSizeUnaryOperator cornerSizeUnaryOperator) { return toBuilder().setTopLeftCornerSize(cornerSizeUnaryOperator.apply(getTopLeftCornerSize())).setTopRightCornerSize(cornerSizeUnaryOperator.apply(getTopRightCornerSize())).setBottomLeftCornerSize(cornerSizeUnaryOperator.apply(getBottomLeftCornerSize())).setBottomRightCornerSize(cornerSizeUnaryOperator.apply(getBottomRightCornerSize())).build(); } public boolean isRoundRect(RectF rectF) { boolean z = this.leftEdge.getClass().equals(EdgeTreatment.class) && this.rightEdge.getClass().equals(EdgeTreatment.class) && this.topEdge.getClass().equals(EdgeTreatment.class) && this.bottomEdge.getClass().equals(EdgeTreatment.class); float cornerSize = this.topLeftCornerSize.getCornerSize(rectF); return z && ((this.topRightCornerSize.getCornerSize(rectF) > cornerSize ? 1 : (this.topRightCornerSize.getCornerSize(rectF) == cornerSize ? 0 : -1)) == 0 && (this.bottomLeftCornerSize.getCornerSize(rectF) > cornerSize ? 1 : (this.bottomLeftCornerSize.getCornerSize(rectF) == cornerSize ? 0 : -1)) == 0 && (this.bottomRightCornerSize.getCornerSize(rectF) > cornerSize ? 1 : (this.bottomRightCornerSize.getCornerSize(rectF) == cornerSize ? 0 : -1)) == 0) && ((this.topRightCorner instanceof RoundedCornerTreatment) && (this.topLeftCorner instanceof RoundedCornerTreatment) && (this.bottomRightCorner instanceof RoundedCornerTreatment) && (this.bottomLeftCorner instanceof RoundedCornerTreatment)); } }