diff options
author | Nancy Chen <nancychen@google.com> | 2015-07-24 03:40:49 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2015-07-24 03:40:49 +0000 |
commit | 8bd03630bf7de19e866fa59124af2f4f069334b6 (patch) | |
tree | 8656a516d8371840bb84463f553b2cf679529f38 | |
parent | 135be5be9cb1e79776b2cc2a631d6a970bbe7b6b (diff) | |
parent | 4c0d05b7d99b5135fc1fd99552e128ddd14b1b8d (diff) | |
download | packages_apps_Dialer-8bd03630bf7de19e866fa59124af2f4f069334b6.tar.gz packages_apps_Dialer-8bd03630bf7de19e866fa59124af2f4f069334b6.tar.bz2 packages_apps_Dialer-8bd03630bf7de19e866fa59124af2f4f069334b6.zip |
am 4c0d05b7: am e8cde28c: am fb229aa0: Merge "Reset voicemail playback when call log is paused." into mnc-dev
* commit '4c0d05b7d99b5135fc1fd99552e128ddd14b1b8d':
Reset voicemail playback when call log is paused.
-rw-r--r-- | src/com/android/dialer/calllog/CallLogAdapter.java | 2 | ||||
-rw-r--r-- | src/com/android/dialer/voicemail/VoicemailPlaybackPresenter.java | 27 |
2 files changed, 18 insertions, 11 deletions
diff --git a/src/com/android/dialer/calllog/CallLogAdapter.java b/src/com/android/dialer/calllog/CallLogAdapter.java index b8b9f0bfc..9609e4d6f 100644 --- a/src/com/android/dialer/calllog/CallLogAdapter.java +++ b/src/com/android/dialer/calllog/CallLogAdapter.java @@ -153,7 +153,7 @@ public class CallLogAdapter extends GroupingListAdapter if (mVoicemailPlaybackPresenter != null) { // Always reset the voicemail playback state on expand or collapse. - mVoicemailPlaybackPresenter.reset(); + mVoicemailPlaybackPresenter.resetAll(); } if (viewHolder.getAdapterPosition() == mCurrentlyExpandedPosition) { diff --git a/src/com/android/dialer/voicemail/VoicemailPlaybackPresenter.java b/src/com/android/dialer/voicemail/VoicemailPlaybackPresenter.java index c54dfe0c3..7270af787 100644 --- a/src/com/android/dialer/voicemail/VoicemailPlaybackPresenter.java +++ b/src/com/android/dialer/voicemail/VoicemailPlaybackPresenter.java @@ -266,7 +266,17 @@ public class VoicemailPlaybackPresenter } /** - * Reset the presenter for playback. + * Reset the presenter for playback back to its original state. + */ + public void resetAll() { + reset(); + + mView = null; + mVoicemailUri = null; + } + + /** + * Reset the presenter such that it is as if the voicemail has not been played. */ public void reset() { if (mMediaPlayer != null) { @@ -276,13 +286,15 @@ public class VoicemailPlaybackPresenter disableProximitySensor(false /* waitForFarState */); - mView = null; - mVoicemailUri = null; - mIsPrepared = false; mIsPlaying = false; mPosition = 0; mDuration.set(0); + + if (mView != null) { + mView.onPlaybackStopped(); + mView.setClipPosition(0, mDuration.get()); + } } /** @@ -297,16 +309,11 @@ public class VoicemailPlaybackPresenter } // Release the media player, otherwise there may be failures. - if (mMediaPlayer != null) { - mMediaPlayer.release(); - mMediaPlayer = null; - mIsPrepared = false; - } + reset(); if (mActivity != null) { mActivity.getWindow().clearFlags(LayoutParams.FLAG_KEEP_SCREEN_ON); } - disableProximitySensor(false /* waitForFarState */); } /** |