Merge change 6154 into donut

* changes:
  Fix bug (#1947162)
This commit is contained in:
Android (Google) Code Review
2009-07-06 11:37:13 -07:00

View File

@ -55,6 +55,7 @@ public class VideoView extends SurfaceView implements MediaPlayerControl {
private SurfaceHolder mSurfaceHolder = null;
private MediaPlayer mMediaPlayer = null;
private boolean mIsPrepared;
private boolean mIsPlaybackCompleted;
private int mVideoWidth;
private int mVideoHeight;
private int mSurfaceWidth;
@ -260,7 +261,7 @@ public class VideoView extends SurfaceView implements MediaPlayerControl {
mSeekWhenPrepared = 0;
}
if (mStartWhenPrepared) {
mMediaPlayer.start();
start();
mStartWhenPrepared = false;
if (mMediaController != null) {
mMediaController.show();
@ -281,7 +282,7 @@ public class VideoView extends SurfaceView implements MediaPlayerControl {
mSeekWhenPrepared = 0;
}
if (mStartWhenPrepared) {
mMediaPlayer.start();
start();
mStartWhenPrepared = false;
}
}
@ -291,6 +292,7 @@ public class VideoView extends SurfaceView implements MediaPlayerControl {
private MediaPlayer.OnCompletionListener mCompletionListener =
new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
mIsPlaybackCompleted = true;
if (mMediaController != null) {
mMediaController.hide();
}
@ -405,7 +407,9 @@ public class VideoView extends SurfaceView implements MediaPlayerControl {
mMediaPlayer.seekTo(mSeekWhenPrepared);
mSeekWhenPrepared = 0;
}
mMediaPlayer.start();
if (!mIsPlaybackCompleted) {
start();
}
if (mMediaController != null) {
mMediaController.show();
}
@ -490,6 +494,7 @@ public class VideoView extends SurfaceView implements MediaPlayerControl {
}
public void start() {
mIsPlaybackCompleted = false;
if (mMediaPlayer != null && mIsPrepared) {
mMediaPlayer.start();
mStartWhenPrepared = false;