Add preference controller for battery seekbar
Also update SeekBarPreference so we can set min for it. Bug: 72228477 Test: RunSettingsRoboTests Change-Id: I5ab1bfd78b0bd461551012c121c7e76764843a30
This commit is contained in:
@@ -40,6 +40,7 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
|
||||
private int mProgress;
|
||||
private int mMax;
|
||||
private int mMin;
|
||||
private boolean mTrackingTouch;
|
||||
|
||||
private boolean mContinuousUpdates;
|
||||
@@ -55,6 +56,7 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
TypedArray a = context.obtainStyledAttributes(
|
||||
attrs, com.android.internal.R.styleable.ProgressBar, defStyleAttr, defStyleRes);
|
||||
setMax(a.getInt(com.android.internal.R.styleable.ProgressBar_max, mMax));
|
||||
setMin(a.getInt(com.android.internal.R.styleable.ProgressBar_min, mMin));
|
||||
a.recycle();
|
||||
|
||||
a = context.obtainStyledAttributes(attrs,
|
||||
@@ -94,6 +96,7 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
com.android.internal.R.id.seekbar);
|
||||
mSeekBar.setOnSeekBarChangeListener(this);
|
||||
mSeekBar.setMax(mMax);
|
||||
mSeekBar.setMin(mMin);
|
||||
mSeekBar.setProgress(mProgress);
|
||||
mSeekBar.setEnabled(isEnabled());
|
||||
final CharSequence title = getTitle();
|
||||
@@ -154,10 +157,21 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
}
|
||||
}
|
||||
|
||||
public void setMin(int min) {
|
||||
if (min != mMin) {
|
||||
mMin = min;
|
||||
notifyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
public int getMax() {
|
||||
return mMax;
|
||||
}
|
||||
|
||||
public int getMin() {
|
||||
return mMin;
|
||||
}
|
||||
|
||||
public void setProgress(int progress) {
|
||||
setProgress(progress, true);
|
||||
}
|
||||
@@ -187,8 +201,8 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
if (progress > mMax) {
|
||||
progress = mMax;
|
||||
}
|
||||
if (progress < 0) {
|
||||
progress = 0;
|
||||
if (progress < mMin) {
|
||||
progress = mMin;
|
||||
}
|
||||
if (progress != mProgress) {
|
||||
mProgress = progress;
|
||||
@@ -257,6 +271,7 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
final SavedState myState = new SavedState(superState);
|
||||
myState.progress = mProgress;
|
||||
myState.max = mMax;
|
||||
myState.min = mMin;
|
||||
return myState;
|
||||
}
|
||||
|
||||
@@ -273,6 +288,7 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
super.onRestoreInstanceState(myState.getSuperState());
|
||||
mProgress = myState.progress;
|
||||
mMax = myState.max;
|
||||
mMin = myState.min;
|
||||
notifyChanged();
|
||||
}
|
||||
|
||||
@@ -285,6 +301,7 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
private static class SavedState extends BaseSavedState {
|
||||
int progress;
|
||||
int max;
|
||||
int min;
|
||||
|
||||
public SavedState(Parcel source) {
|
||||
super(source);
|
||||
@@ -292,6 +309,7 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
// Restore the click counter
|
||||
progress = source.readInt();
|
||||
max = source.readInt();
|
||||
min = source.readInt();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -301,6 +319,7 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
// Save the click counter
|
||||
dest.writeInt(progress);
|
||||
dest.writeInt(max);
|
||||
dest.writeInt(min);
|
||||
}
|
||||
|
||||
public SavedState(Parcelable superState) {
|
||||
|
Reference in New Issue
Block a user