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() {
|
protected void init() {
|
||||||
if (mSeekBar == null) return;
|
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() {
|
final SeekBarVolumizer.Callback sbvc = new SeekBarVolumizer.Callback() {
|
||||||
@Override
|
@Override
|
||||||
public void onSampleStarting(SeekBarVolumizer sbv) {
|
public void onSampleStarting(SeekBarVolumizer sbv) {
|
||||||
@@ -179,10 +184,6 @@ public class VolumeSeekBarPreference extends SeekBarPreference {
|
|||||||
if (mListener != null) {
|
if (mListener != null) {
|
||||||
mListener.onUpdateMuteState();
|
mListener.onUpdateMuteState();
|
||||||
}
|
}
|
||||||
if (!isEnabled()) {
|
|
||||||
mSeekBar.setEnabled(false);
|
|
||||||
mVolumizer.stop();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void updateIconView() {
|
protected void updateIconView() {
|
||||||
|
@@ -81,6 +81,7 @@ public class VolumeSeekBarPreferenceTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void init_listenerIsCalled() {
|
public void init_listenerIsCalled() {
|
||||||
|
when(mPreference.isEnabled()).thenReturn(true);
|
||||||
doCallRealMethod().when(mPreference).setListener(mListener);
|
doCallRealMethod().when(mPreference).setListener(mListener);
|
||||||
doCallRealMethod().when(mPreference).init();
|
doCallRealMethod().when(mPreference).init();
|
||||||
|
|
||||||
@@ -92,6 +93,18 @@ public class VolumeSeekBarPreferenceTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void init_listenerNotSet_noException() {
|
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();
|
doCallRealMethod().when(mPreference).init();
|
||||||
|
|
||||||
mPreference.init();
|
mPreference.init();
|
||||||
|
Reference in New Issue
Block a user