mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2025-01-09 13:43:22 +00:00
229 lines
9.7 KiB
Java
229 lines
9.7 KiB
Java
package com.google.android.material.timepicker;
|
|
|
|
import android.content.Context;
|
|
import android.text.TextUtils;
|
|
import android.util.AttributeSet;
|
|
import android.view.GestureDetector;
|
|
import android.view.LayoutInflater;
|
|
import android.view.MotionEvent;
|
|
import android.view.View;
|
|
import android.widget.Checkable;
|
|
import androidx.constraintlayout.widget.ConstraintLayout;
|
|
import androidx.core.view.AccessibilityDelegateCompat;
|
|
import androidx.core.view.ViewCompat;
|
|
import com.google.android.material.R;
|
|
import com.google.android.material.button.MaterialButtonToggleGroup;
|
|
import com.google.android.material.chip.Chip;
|
|
import com.google.android.material.timepicker.ClockHandView;
|
|
import java.util.Locale;
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
/* loaded from: classes2.dex */
|
|
public class TimePickerView extends ConstraintLayout implements TimePickerControls {
|
|
static final String GENERIC_VIEW_ACCESSIBILITY_CLASS_NAME = "android.view.View";
|
|
private final ClockFaceView clockFace;
|
|
private final ClockHandView clockHandView;
|
|
private final Chip hourView;
|
|
private final Chip minuteView;
|
|
private OnDoubleTapListener onDoubleTapListener;
|
|
private OnPeriodChangeListener onPeriodChangeListener;
|
|
private OnSelectionChange onSelectionChangeListener;
|
|
private final View.OnClickListener selectionListener;
|
|
private final MaterialButtonToggleGroup toggle;
|
|
|
|
/* loaded from: classes2.dex */
|
|
interface OnDoubleTapListener {
|
|
void onDoubleTap();
|
|
}
|
|
|
|
/* loaded from: classes2.dex */
|
|
interface OnPeriodChangeListener {
|
|
void onPeriodChange(int i);
|
|
}
|
|
|
|
/* loaded from: classes2.dex */
|
|
interface OnSelectionChange {
|
|
void onSelectionChanged(int i);
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
public void setOnDoubleTapListener(OnDoubleTapListener onDoubleTapListener) {
|
|
this.onDoubleTapListener = onDoubleTapListener;
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
public void setOnPeriodChangeListener(OnPeriodChangeListener onPeriodChangeListener) {
|
|
this.onPeriodChangeListener = onPeriodChangeListener;
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
public void setOnSelectionChangeListener(OnSelectionChange onSelectionChange) {
|
|
this.onSelectionChangeListener = onSelectionChange;
|
|
}
|
|
|
|
public TimePickerView(Context context) {
|
|
this(context, null);
|
|
}
|
|
|
|
public TimePickerView(Context context, AttributeSet attributeSet) {
|
|
this(context, attributeSet, 0);
|
|
}
|
|
|
|
public TimePickerView(Context context, AttributeSet attributeSet, int i) {
|
|
super(context, attributeSet, i);
|
|
this.selectionListener = new View.OnClickListener() { // from class: com.google.android.material.timepicker.TimePickerView.1
|
|
@Override // android.view.View.OnClickListener
|
|
public void onClick(View view) {
|
|
if (TimePickerView.this.onSelectionChangeListener != null) {
|
|
TimePickerView.this.onSelectionChangeListener.onSelectionChanged(((Integer) view.getTag(R.id.selection_type)).intValue());
|
|
}
|
|
}
|
|
};
|
|
LayoutInflater.from(context).inflate(R.layout.material_timepicker, this);
|
|
this.clockFace = (ClockFaceView) findViewById(R.id.material_clock_face);
|
|
MaterialButtonToggleGroup materialButtonToggleGroup = (MaterialButtonToggleGroup) findViewById(R.id.material_clock_period_toggle);
|
|
this.toggle = materialButtonToggleGroup;
|
|
materialButtonToggleGroup.addOnButtonCheckedListener(new MaterialButtonToggleGroup.OnButtonCheckedListener() { // from class: com.google.android.material.timepicker.TimePickerView$$ExternalSyntheticLambda0
|
|
@Override // com.google.android.material.button.MaterialButtonToggleGroup.OnButtonCheckedListener
|
|
public final void onButtonChecked(MaterialButtonToggleGroup materialButtonToggleGroup2, int i2, boolean z) {
|
|
TimePickerView.this.m5573x9f44237d(materialButtonToggleGroup2, i2, z);
|
|
}
|
|
});
|
|
this.minuteView = (Chip) findViewById(R.id.material_minute_tv);
|
|
this.hourView = (Chip) findViewById(R.id.material_hour_tv);
|
|
this.clockHandView = (ClockHandView) findViewById(R.id.material_clock_hand);
|
|
setupDoubleTap();
|
|
setUpDisplay();
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
/* renamed from: lambda$new$0$com-google-android-material-timepicker-TimePickerView, reason: not valid java name */
|
|
public /* synthetic */ void m5573x9f44237d(MaterialButtonToggleGroup materialButtonToggleGroup, int i, boolean z) {
|
|
if (z && this.onPeriodChangeListener != null) {
|
|
this.onPeriodChangeListener.onPeriodChange(i == R.id.material_clock_period_pm_button ? 1 : 0);
|
|
}
|
|
}
|
|
|
|
private void setupDoubleTap() {
|
|
final GestureDetector gestureDetector = new GestureDetector(getContext(), new GestureDetector.SimpleOnGestureListener() { // from class: com.google.android.material.timepicker.TimePickerView.2
|
|
@Override // android.view.GestureDetector.SimpleOnGestureListener, android.view.GestureDetector.OnDoubleTapListener
|
|
public boolean onDoubleTap(MotionEvent motionEvent) {
|
|
OnDoubleTapListener onDoubleTapListener = TimePickerView.this.onDoubleTapListener;
|
|
if (onDoubleTapListener == null) {
|
|
return false;
|
|
}
|
|
onDoubleTapListener.onDoubleTap();
|
|
return true;
|
|
}
|
|
});
|
|
View.OnTouchListener onTouchListener = new View.OnTouchListener() { // from class: com.google.android.material.timepicker.TimePickerView.3
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
@Override // android.view.View.OnTouchListener
|
|
public boolean onTouch(View view, MotionEvent motionEvent) {
|
|
if (((Checkable) view).isChecked()) {
|
|
return gestureDetector.onTouchEvent(motionEvent);
|
|
}
|
|
return false;
|
|
}
|
|
};
|
|
this.minuteView.setOnTouchListener(onTouchListener);
|
|
this.hourView.setOnTouchListener(onTouchListener);
|
|
}
|
|
|
|
public void setMinuteHourDelegate(AccessibilityDelegateCompat accessibilityDelegateCompat) {
|
|
ViewCompat.setAccessibilityDelegate(this.hourView, accessibilityDelegateCompat);
|
|
}
|
|
|
|
public void setHourClickDelegate(AccessibilityDelegateCompat accessibilityDelegateCompat) {
|
|
ViewCompat.setAccessibilityDelegate(this.minuteView, accessibilityDelegateCompat);
|
|
}
|
|
|
|
private void setUpDisplay() {
|
|
this.minuteView.setTag(R.id.selection_type, 12);
|
|
this.hourView.setTag(R.id.selection_type, 10);
|
|
this.minuteView.setOnClickListener(this.selectionListener);
|
|
this.hourView.setOnClickListener(this.selectionListener);
|
|
this.minuteView.setAccessibilityClassName("android.view.View");
|
|
this.hourView.setAccessibilityClassName("android.view.View");
|
|
}
|
|
|
|
@Override // com.google.android.material.timepicker.TimePickerControls
|
|
public void setValues(String[] strArr, int i) {
|
|
this.clockFace.setValues(strArr, i);
|
|
}
|
|
|
|
@Override // com.google.android.material.timepicker.TimePickerControls
|
|
public void setHandRotation(float f) {
|
|
this.clockHandView.setHandRotation(f);
|
|
}
|
|
|
|
public void setHandRotation(float f, boolean z) {
|
|
this.clockHandView.setHandRotation(f, z);
|
|
}
|
|
|
|
public void setAnimateOnTouchUp(boolean z) {
|
|
this.clockHandView.setAnimateOnTouchUp(z);
|
|
}
|
|
|
|
@Override // com.google.android.material.timepicker.TimePickerControls
|
|
public void updateTime(int i, int i2, int i3) {
|
|
int i4;
|
|
if (i == 1) {
|
|
i4 = R.id.material_clock_period_pm_button;
|
|
} else {
|
|
i4 = R.id.material_clock_period_am_button;
|
|
}
|
|
this.toggle.check(i4);
|
|
Locale locale = getResources().getConfiguration().locale;
|
|
String format = String.format(locale, TimeModel.ZERO_LEADING_NUMBER_FORMAT, Integer.valueOf(i3));
|
|
String format2 = String.format(locale, TimeModel.ZERO_LEADING_NUMBER_FORMAT, Integer.valueOf(i2));
|
|
if (!TextUtils.equals(this.minuteView.getText(), format)) {
|
|
this.minuteView.setText(format);
|
|
}
|
|
if (TextUtils.equals(this.hourView.getText(), format2)) {
|
|
return;
|
|
}
|
|
this.hourView.setText(format2);
|
|
}
|
|
|
|
@Override // com.google.android.material.timepicker.TimePickerControls
|
|
public void setActiveSelection(int i) {
|
|
updateSelection(this.minuteView, i == 12);
|
|
updateSelection(this.hourView, i == 10);
|
|
}
|
|
|
|
private void updateSelection(Chip chip, boolean z) {
|
|
chip.setChecked(z);
|
|
ViewCompat.setAccessibilityLiveRegion(chip, z ? 2 : 0);
|
|
}
|
|
|
|
public void addOnRotateListener(ClockHandView.OnRotateListener onRotateListener) {
|
|
this.clockHandView.addOnRotateListener(onRotateListener);
|
|
}
|
|
|
|
public void setOnActionUpListener(ClockHandView.OnActionUpListener onActionUpListener) {
|
|
this.clockHandView.setOnActionUpListener(onActionUpListener);
|
|
}
|
|
|
|
public void showToggle() {
|
|
this.toggle.setVisibility(0);
|
|
}
|
|
|
|
@Override // android.view.View
|
|
protected void onVisibilityChanged(View view, int i) {
|
|
super.onVisibilityChanged(view, i);
|
|
if (view == this && i == 0) {
|
|
this.hourView.sendAccessibilityEvent(8);
|
|
}
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
public int getCurrentLevel() {
|
|
return this.clockFace.getCurrentLevel();
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
public void setCurrentLevel(int i) {
|
|
this.clockFace.setCurrentLevel(i);
|
|
}
|
|
}
|