Rabbit-R1/switch port/java/sources/androidx/appcompat/widget/AppCompatSeekBarHelper.java
2024-05-21 17:08:36 -04:00

153 lines
6.1 KiB
Java

package androidx.appcompat.widget;
import android.content.res.ColorStateList;
import android.graphics.Canvas;
import android.graphics.PorterDuff;
import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
import android.widget.SeekBar;
import androidx.appcompat.R;
import androidx.core.graphics.drawable.DrawableCompat;
import androidx.core.view.ViewCompat;
/* loaded from: classes.dex */
class AppCompatSeekBarHelper extends AppCompatProgressBarHelper {
private boolean mHasTickMarkTint;
private boolean mHasTickMarkTintMode;
private Drawable mTickMark;
private ColorStateList mTickMarkTintList;
private PorterDuff.Mode mTickMarkTintMode;
private final SeekBar mView;
Drawable getTickMark() {
return this.mTickMark;
}
ColorStateList getTickMarkTintList() {
return this.mTickMarkTintList;
}
PorterDuff.Mode getTickMarkTintMode() {
return this.mTickMarkTintMode;
}
/* JADX INFO: Access modifiers changed from: package-private */
public AppCompatSeekBarHelper(SeekBar seekBar) {
super(seekBar);
this.mTickMarkTintList = null;
this.mTickMarkTintMode = null;
this.mHasTickMarkTint = false;
this.mHasTickMarkTintMode = false;
this.mView = seekBar;
}
/* JADX INFO: Access modifiers changed from: package-private */
@Override // androidx.appcompat.widget.AppCompatProgressBarHelper
public void loadFromAttributes(AttributeSet attributeSet, int i) {
super.loadFromAttributes(attributeSet, i);
TintTypedArray obtainStyledAttributes = TintTypedArray.obtainStyledAttributes(this.mView.getContext(), attributeSet, R.styleable.AppCompatSeekBar, i, 0);
SeekBar seekBar = this.mView;
ViewCompat.saveAttributeDataForStyleable(seekBar, seekBar.getContext(), R.styleable.AppCompatSeekBar, attributeSet, obtainStyledAttributes.getWrappedTypeArray(), i, 0);
Drawable drawableIfKnown = obtainStyledAttributes.getDrawableIfKnown(R.styleable.AppCompatSeekBar_android_thumb);
if (drawableIfKnown != null) {
this.mView.setThumb(drawableIfKnown);
}
setTickMark(obtainStyledAttributes.getDrawable(R.styleable.AppCompatSeekBar_tickMark));
if (obtainStyledAttributes.hasValue(R.styleable.AppCompatSeekBar_tickMarkTintMode)) {
this.mTickMarkTintMode = DrawableUtils.parseTintMode(obtainStyledAttributes.getInt(R.styleable.AppCompatSeekBar_tickMarkTintMode, -1), this.mTickMarkTintMode);
this.mHasTickMarkTintMode = true;
}
if (obtainStyledAttributes.hasValue(R.styleable.AppCompatSeekBar_tickMarkTint)) {
this.mTickMarkTintList = obtainStyledAttributes.getColorStateList(R.styleable.AppCompatSeekBar_tickMarkTint);
this.mHasTickMarkTint = true;
}
obtainStyledAttributes.recycle();
applyTickMarkTint();
}
void setTickMark(Drawable drawable) {
Drawable drawable2 = this.mTickMark;
if (drawable2 != null) {
drawable2.setCallback(null);
}
this.mTickMark = drawable;
if (drawable != null) {
drawable.setCallback(this.mView);
DrawableCompat.setLayoutDirection(drawable, ViewCompat.getLayoutDirection(this.mView));
if (drawable.isStateful()) {
drawable.setState(this.mView.getDrawableState());
}
applyTickMarkTint();
}
this.mView.invalidate();
}
void setTickMarkTintList(ColorStateList colorStateList) {
this.mTickMarkTintList = colorStateList;
this.mHasTickMarkTint = true;
applyTickMarkTint();
}
void setTickMarkTintMode(PorterDuff.Mode mode) {
this.mTickMarkTintMode = mode;
this.mHasTickMarkTintMode = true;
applyTickMarkTint();
}
private void applyTickMarkTint() {
Drawable drawable = this.mTickMark;
if (drawable != null) {
if (this.mHasTickMarkTint || this.mHasTickMarkTintMode) {
Drawable wrap = DrawableCompat.wrap(drawable.mutate());
this.mTickMark = wrap;
if (this.mHasTickMarkTint) {
DrawableCompat.setTintList(wrap, this.mTickMarkTintList);
}
if (this.mHasTickMarkTintMode) {
DrawableCompat.setTintMode(this.mTickMark, this.mTickMarkTintMode);
}
if (this.mTickMark.isStateful()) {
this.mTickMark.setState(this.mView.getDrawableState());
}
}
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void jumpDrawablesToCurrentState() {
Drawable drawable = this.mTickMark;
if (drawable != null) {
drawable.jumpToCurrentState();
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void drawableStateChanged() {
Drawable drawable = this.mTickMark;
if (drawable != null && drawable.isStateful() && drawable.setState(this.mView.getDrawableState())) {
this.mView.invalidateDrawable(drawable);
}
}
/* JADX INFO: Access modifiers changed from: package-private */
public void drawTickMarks(Canvas canvas) {
if (this.mTickMark != null) {
int max = this.mView.getMax();
if (max > 1) {
int intrinsicWidth = this.mTickMark.getIntrinsicWidth();
int intrinsicHeight = this.mTickMark.getIntrinsicHeight();
int i = intrinsicWidth >= 0 ? intrinsicWidth / 2 : 1;
int i2 = intrinsicHeight >= 0 ? intrinsicHeight / 2 : 1;
this.mTickMark.setBounds(-i, -i2, i, i2);
float width = ((this.mView.getWidth() - this.mView.getPaddingLeft()) - this.mView.getPaddingRight()) / max;
int save = canvas.save();
canvas.translate(this.mView.getPaddingLeft(), this.mView.getHeight() / 2);
for (int i3 = 0; i3 <= max; i3++) {
this.mTickMark.draw(canvas);
canvas.translate(width, 0.0f);
}
canvas.restoreToCount(save);
}
}
}
}