summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLajos Molnar <lajos@google.com>2013-10-28 15:02:35 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-10-28 15:02:35 -0700
commitfcd69ca4cc1fb9f1f837afc8cf5aece9520aaded (patch)
tree088f23289506b2d1327c39cc2b97826a2c95fd7d
parent1c18c5d40ce7004d28aaa8f6c6713efcc72e6706 (diff)
parent66b753b06bb265d3f5b25244856f8d827a9dc5af (diff)
downloadframeworks_base-fcd69ca4cc1fb9f1f837afc8cf5aece9520aaded.zip
frameworks_base-fcd69ca4cc1fb9f1f837afc8cf5aece9520aaded.tar.gz
frameworks_base-fcd69ca4cc1fb9f1f837afc8cf5aece9520aaded.tar.bz2
am 66b753b0: Merge "MediaPlayer: MTP: update state only based on source events" into klp-dev
* commit '66b753b06bb265d3f5b25244856f8d827a9dc5af': MediaPlayer: MTP: update state only based on source events
-rw-r--r--media/java/android/media/MediaPlayer.java13
1 files changed, 11 insertions, 2 deletions
diff --git a/media/java/android/media/MediaPlayer.java b/media/java/android/media/MediaPlayer.java
index 0abd5f8..706258a 100644
--- a/media/java/android/media/MediaPlayer.java
+++ b/media/java/android/media/MediaPlayer.java
@@ -2861,8 +2861,6 @@ public class MediaPlayer implements SubtitleController.Listener
}
if (DEBUG) Log.v(TAG, "scheduleNotification " + type + " in " + delayUs);
- mStopped = type == NOTIFY_STOP;
- mSeeking = type == NOTIFY_SEEK;
mEventHandler.removeMessages(NOTIFY);
Message msg = mEventHandler.obtainMessage(NOTIFY, type, 0);
mEventHandler.sendMessageDelayed(msg, (int) (delayUs / 1000));
@@ -2889,9 +2887,12 @@ public class MediaPlayer implements SubtitleController.Listener
synchronized(this) {
if (DEBUG) Log.d(TAG, "onPaused: " + paused);
if (mStopped) { // handle as seek if we were stopped
+ mStopped = false;
+ mSeeking = true;
scheduleNotification(NOTIFY_SEEK, 0 /* delay */);
} else {
mPausing = paused; // special handling if player disappeared
+ mSeeking = false;
scheduleNotification(REFRESH_AND_NOTIFY_TIME, 0 /* delay */);
}
}
@@ -2902,6 +2903,8 @@ public class MediaPlayer implements SubtitleController.Listener
synchronized(this) {
if (DEBUG) Log.d(TAG, "onStopped");
mPaused = true;
+ mStopped = true;
+ mSeeking = false;
scheduleNotification(NOTIFY_STOP, 0 /* delay */);
}
}
@@ -2910,6 +2913,8 @@ public class MediaPlayer implements SubtitleController.Listener
@Override
public void onSeekComplete(MediaPlayer mp) {
synchronized(this) {
+ mStopped = false;
+ mSeeking = true;
scheduleNotification(NOTIFY_SEEK, 0 /* delay */);
}
}
@@ -2918,6 +2923,8 @@ public class MediaPlayer implements SubtitleController.Listener
public void onNewPlayer() {
if (mRefresh) {
synchronized(this) {
+ mStopped = false;
+ mSeeking = true;
scheduleNotification(NOTIFY_SEEK, 0 /* delay */);
}
}
@@ -3143,6 +3150,8 @@ public class MediaPlayer implements SubtitleController.Listener
if (mTimeAdjustment > 1000000) {
// schedule seeked event if time jumped significantly
// TODO: do this properly by introducing an exception
+ mStopped = false;
+ mSeeking = true;
scheduleNotification(NOTIFY_SEEK, 0 /* delay */);
}
} else {