summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNancy Chen <nancychen@google.com>2015-07-24 03:40:49 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-07-24 03:40:49 +0000
commit8bd03630bf7de19e866fa59124af2f4f069334b6 (patch)
tree8656a516d8371840bb84463f553b2cf679529f38
parent135be5be9cb1e79776b2cc2a631d6a970bbe7b6b (diff)
parent4c0d05b7d99b5135fc1fd99552e128ddd14b1b8d (diff)
downloadpackages_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.java2
-rw-r--r--src/com/android/dialer/voicemail/VoicemailPlaybackPresenter.java27
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 */);
}
/**