Merge "Improve volume slider" into main
This commit is contained in:
committed by
Android (Google) Code Review
commit
3365eb3e7a
@@ -131,6 +131,11 @@ public class VolumeSeekBarPreference extends SeekBarPreference {
|
||||
|
||||
protected void init() {
|
||||
if (mSeekBar == null) return;
|
||||
// It's unnecessary to set up relevant volumizer configuration if preference is disabled.
|
||||
if (!isEnabled()) {
|
||||
mSeekBar.setEnabled(false);
|
||||
return;
|
||||
}
|
||||
final SeekBarVolumizer.Callback sbvc = new SeekBarVolumizer.Callback() {
|
||||
@Override
|
||||
public void onSampleStarting(SeekBarVolumizer sbv) {
|
||||
@@ -179,10 +184,6 @@ public class VolumeSeekBarPreference extends SeekBarPreference {
|
||||
if (mListener != null) {
|
||||
mListener.onUpdateMuteState();
|
||||
}
|
||||
if (!isEnabled()) {
|
||||
mSeekBar.setEnabled(false);
|
||||
mVolumizer.stop();
|
||||
}
|
||||
}
|
||||
|
||||
protected void updateIconView() {
|
||||
|
@@ -81,6 +81,7 @@ public class VolumeSeekBarPreferenceTest {
|
||||
|
||||
@Test
|
||||
public void init_listenerIsCalled() {
|
||||
when(mPreference.isEnabled()).thenReturn(true);
|
||||
doCallRealMethod().when(mPreference).setListener(mListener);
|
||||
doCallRealMethod().when(mPreference).init();
|
||||
|
||||
@@ -92,6 +93,18 @@ public class VolumeSeekBarPreferenceTest {
|
||||
|
||||
@Test
|
||||
public void init_listenerNotSet_noException() {
|
||||
when(mPreference.isEnabled()).thenReturn(true);
|
||||
doCallRealMethod().when(mPreference).init();
|
||||
|
||||
mPreference.init();
|
||||
|
||||
verify(mPreference, never()).updateContentDescription(CONTENT_DESCRIPTION);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void init_preferenceIsDisabled_shouldNotInvokeListener() {
|
||||
when(mPreference.isEnabled()).thenReturn(false);
|
||||
doCallRealMethod().when(mPreference).setListener(mListener);
|
||||
doCallRealMethod().when(mPreference).init();
|
||||
|
||||
mPreference.init();
|
||||
|
Reference in New Issue
Block a user