diff options
author | John Spurlock <jspurlock@google.com> | 2014-10-21 14:23:24 -0400 |
---|---|---|
committer | John Spurlock <jspurlock@google.com> | 2014-10-21 14:23:24 -0400 |
commit | 735f9ebc188e1cb225533e1f5f9ef925d1f0b20e (patch) | |
tree | f522806f1e5fbde4a48d71f38484423baebb90a5 /core | |
parent | a9a550dd8e87b33979670cf856838ba227500547 (diff) | |
download | frameworks_base-735f9ebc188e1cb225533e1f5f9ef925d1f0b20e.zip frameworks_base-735f9ebc188e1cb225533e1f5f9ef925d1f0b20e.tar.gz frameworks_base-735f9ebc188e1cb225533e1f5f9ef925d1f0b20e.tar.bz2 |
Settings: Make SeekBarVolumizer more null-resilient.
Now that the instances are reusable, ensure all "post" methods
do a handler check, and ensure they are all internal.
Bug: 18063070
Change-Id: Idc478c636686f666f5656f3d07bf2738ba3e9a5a
Diffstat (limited to 'core')
-rw-r--r-- | core/java/android/preference/SeekBarVolumizer.java | 7 | ||||
-rw-r--r-- | core/java/android/preference/VolumePreference.java | 2 |
2 files changed, 6 insertions, 3 deletions
diff --git a/core/java/android/preference/SeekBarVolumizer.java b/core/java/android/preference/SeekBarVolumizer.java index a680b51..3130b64 100644 --- a/core/java/android/preference/SeekBarVolumizer.java +++ b/core/java/android/preference/SeekBarVolumizer.java @@ -130,6 +130,7 @@ public class SeekBarVolumizer implements OnSeekBarChangeListener, Handler.Callba } private void postStartSample() { + if (mHandler == null) return; mHandler.removeMessages(MSG_START_SAMPLE); mHandler.sendMessageDelayed(mHandler.obtainMessage(MSG_START_SAMPLE), isSamplePlaying() ? CHECK_RINGTONE_PLAYBACK_DELAY_MS : 0); @@ -150,7 +151,8 @@ public class SeekBarVolumizer implements OnSeekBarChangeListener, Handler.Callba } } - void postStopSample() { + private void postStopSample() { + if (mHandler == null) return; // remove pending delayed start messages mHandler.removeMessages(MSG_START_SAMPLE); mHandler.removeMessages(MSG_STOP_SAMPLE); @@ -200,7 +202,8 @@ public class SeekBarVolumizer implements OnSeekBarChangeListener, Handler.Callba postSetVolume(progress); } - void postSetVolume(int progress) { + private void postSetVolume(int progress) { + if (mHandler == null) return; // Do the volume changing separately to give responsive UI mLastProgress = progress; mHandler.removeMessages(MSG_SET_STREAM_VOLUME); diff --git a/core/java/android/preference/VolumePreference.java b/core/java/android/preference/VolumePreference.java index 86d96f2..0d4c0b6 100644 --- a/core/java/android/preference/VolumePreference.java +++ b/core/java/android/preference/VolumePreference.java @@ -117,7 +117,7 @@ public class VolumePreference extends SeekBarDialogPreference implements public void onActivityStop() { if (mSeekBarVolumizer != null) { - mSeekBarVolumizer.postStopSample(); + mSeekBarVolumizer.stopSample(); } } |