Export callback to receive seekbar change event from SeekBarPrefernce
- Export onSeekBarChangeListener callback to receive change event from parent - Update battery saver schedule trigger threshold after seekbar tounch ending instead of update it every time during dragging or touching Bug: 236356020 Test: make RunSettingsRoboTests Change-Id: Ifee7cd9e7cabfbec0817a4c28254228f885d6a8d
This commit is contained in:
@@ -64,6 +64,7 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
private CharSequence mOverrideSeekBarStateDescription;
|
||||
private CharSequence mSeekBarContentDescription;
|
||||
private CharSequence mSeekBarStateDescription;
|
||||
private OnSeekBarChangeListener mOnSeekBarChangeListener;
|
||||
|
||||
public SeekBarPreference(
|
||||
Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
|
||||
@@ -101,6 +102,14 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
this(context, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* A callback that notifies clients when the seekbar progress level has been
|
||||
* changed. See {@link OnSeekBarChangeListener} for more info.
|
||||
*/
|
||||
public void setOnSeekBarChangeListener(OnSeekBarChangeListener listener) {
|
||||
mOnSeekBarChangeListener = listener;
|
||||
}
|
||||
|
||||
public void setShouldBlink(boolean shouldBlink) {
|
||||
mShouldBlink = shouldBlink;
|
||||
notifyChanged();
|
||||
@@ -301,6 +310,9 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
if (fromUser && (mContinuousUpdates || !mTrackingTouch)) {
|
||||
syncProgress(seekBar);
|
||||
}
|
||||
if (mOnSeekBarChangeListener != null) {
|
||||
mOnSeekBarChangeListener.onProgressChanged(seekBar, progress, fromUser);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -309,6 +321,9 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
mJankMonitor.begin(InteractionJankMonitor.Configuration.Builder
|
||||
.withView(CUJ_SETTINGS_SLIDER, seekBar)
|
||||
.setTag(getKey()));
|
||||
if (mOnSeekBarChangeListener != null) {
|
||||
mOnSeekBarChangeListener.onStartTrackingTouch(seekBar);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -317,6 +332,9 @@ public class SeekBarPreference extends RestrictedPreference
|
||||
if (seekBar.getProgress() != mProgress) {
|
||||
syncProgress(seekBar);
|
||||
}
|
||||
if (mOnSeekBarChangeListener != null) {
|
||||
mOnSeekBarChangeListener.onStopTrackingTouch(seekBar);
|
||||
}
|
||||
mJankMonitor.end(CUJ_SETTINGS_SLIDER);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user