156 lines
5.6 KiB
Java
156 lines
5.6 KiB
Java
package androidx.preference;
|
|
|
|
import android.content.Context;
|
|
import android.content.res.TypedArray;
|
|
import android.os.Parcel;
|
|
import android.os.Parcelable;
|
|
import android.text.TextUtils;
|
|
import android.util.AttributeSet;
|
|
import android.widget.EditText;
|
|
import androidx.annotation.NonNull;
|
|
import androidx.annotation.Nullable;
|
|
import androidx.core.content.res.TypedArrayUtils;
|
|
import androidx.preference.Preference;
|
|
public class EditTextPreference extends DialogPreference {
|
|
@Nullable
|
|
private OnBindEditTextListener mOnBindEditTextListener;
|
|
private String mText;
|
|
|
|
public interface OnBindEditTextListener {
|
|
void onBindEditText(@NonNull EditText editText);
|
|
}
|
|
|
|
public static class SavedState extends Preference.BaseSavedState {
|
|
public static final Parcelable.Creator<SavedState> CREATOR = new AnonymousClass1();
|
|
public String mText;
|
|
|
|
/* renamed from: androidx.preference.EditTextPreference$SavedState$1 reason: invalid class name */
|
|
public static class AnonymousClass1 implements Parcelable.Creator<SavedState> {
|
|
@Override // android.os.Parcelable.Creator
|
|
public SavedState createFromParcel(Parcel parcel) {
|
|
return new SavedState(parcel);
|
|
}
|
|
|
|
@Override // android.os.Parcelable.Creator
|
|
public SavedState[] newArray(int i) {
|
|
return new SavedState[i];
|
|
}
|
|
}
|
|
|
|
public SavedState(Parcel parcel) {
|
|
super(parcel);
|
|
this.mText = parcel.readString();
|
|
}
|
|
|
|
public SavedState(Parcelable parcelable) {
|
|
super(parcelable);
|
|
}
|
|
|
|
@Override // android.view.AbsSavedState, android.os.Parcelable
|
|
public void writeToParcel(Parcel parcel, int i) {
|
|
super.writeToParcel(parcel, i);
|
|
parcel.writeString(this.mText);
|
|
}
|
|
}
|
|
|
|
public static final class SimpleSummaryProvider implements Preference.SummaryProvider<EditTextPreference> {
|
|
private static SimpleSummaryProvider sSimpleSummaryProvider;
|
|
|
|
private SimpleSummaryProvider() {
|
|
}
|
|
|
|
public static SimpleSummaryProvider getInstance() {
|
|
if (sSimpleSummaryProvider == null) {
|
|
sSimpleSummaryProvider = new SimpleSummaryProvider();
|
|
}
|
|
return sSimpleSummaryProvider;
|
|
}
|
|
|
|
public CharSequence provideSummary(EditTextPreference editTextPreference) {
|
|
return TextUtils.isEmpty(editTextPreference.getText()) ? editTextPreference.getContext().getString(R.string.not_set) : editTextPreference.getText();
|
|
}
|
|
}
|
|
|
|
public EditTextPreference(Context context) {
|
|
this(context, null);
|
|
}
|
|
|
|
public EditTextPreference(Context context, AttributeSet attributeSet) {
|
|
this(context, attributeSet, TypedArrayUtils.getAttr(context, R.attr.editTextPreferenceStyle, 16842898));
|
|
}
|
|
|
|
public EditTextPreference(Context context, AttributeSet attributeSet, int i) {
|
|
this(context, attributeSet, i, 0);
|
|
}
|
|
|
|
public EditTextPreference(Context context, AttributeSet attributeSet, int i, int i2) {
|
|
super(context, attributeSet, i, i2);
|
|
TypedArray obtainStyledAttributes = context.obtainStyledAttributes(attributeSet, R.styleable.EditTextPreference, i, i2);
|
|
int i3 = R.styleable.EditTextPreference_useSimpleSummaryProvider;
|
|
if (TypedArrayUtils.getBoolean(obtainStyledAttributes, i3, i3, false)) {
|
|
setSummaryProvider(SimpleSummaryProvider.getInstance());
|
|
}
|
|
obtainStyledAttributes.recycle();
|
|
}
|
|
|
|
@Nullable
|
|
public OnBindEditTextListener getOnBindEditTextListener() {
|
|
return this.mOnBindEditTextListener;
|
|
}
|
|
|
|
public String getText() {
|
|
return this.mText;
|
|
}
|
|
|
|
@Override // androidx.preference.Preference
|
|
public Object onGetDefaultValue(TypedArray typedArray, int i) {
|
|
return typedArray.getString(i);
|
|
}
|
|
|
|
@Override // androidx.preference.Preference
|
|
public void onRestoreInstanceState(Parcelable parcelable) {
|
|
if (parcelable == null || !parcelable.getClass().equals(SavedState.class)) {
|
|
super.onRestoreInstanceState(parcelable);
|
|
return;
|
|
}
|
|
SavedState savedState = (SavedState) parcelable;
|
|
super.onRestoreInstanceState(savedState.getSuperState());
|
|
setText(savedState.mText);
|
|
}
|
|
|
|
@Override // androidx.preference.Preference
|
|
public Parcelable onSaveInstanceState() {
|
|
Parcelable onSaveInstanceState = super.onSaveInstanceState();
|
|
if (isPersistent()) {
|
|
return onSaveInstanceState;
|
|
}
|
|
SavedState savedState = new SavedState(onSaveInstanceState);
|
|
savedState.mText = getText();
|
|
return savedState;
|
|
}
|
|
|
|
@Override // androidx.preference.Preference
|
|
public void onSetInitialValue(Object obj) {
|
|
setText(getPersistedString((String) obj));
|
|
}
|
|
|
|
public void setOnBindEditTextListener(@Nullable OnBindEditTextListener onBindEditTextListener) {
|
|
this.mOnBindEditTextListener = onBindEditTextListener;
|
|
}
|
|
|
|
public void setText(String str) {
|
|
boolean shouldDisableDependents = shouldDisableDependents();
|
|
this.mText = str;
|
|
persistString(str);
|
|
boolean shouldDisableDependents2 = shouldDisableDependents();
|
|
if (shouldDisableDependents2 != shouldDisableDependents) {
|
|
notifyDependencyChange(shouldDisableDependents2);
|
|
}
|
|
notifyChanged();
|
|
}
|
|
|
|
@Override // androidx.preference.Preference
|
|
public boolean shouldDisableDependents() {
|
|
return TextUtils.isEmpty(this.mText) || super.shouldDisableDependents();
|
|
}
|
|
}
|