diff options
Diffstat (limited to 'src/com/android/gallery3d/app/MoviePlayer.java')
-rwxr-xr-x | src/com/android/gallery3d/app/MoviePlayer.java | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/com/android/gallery3d/app/MoviePlayer.java b/src/com/android/gallery3d/app/MoviePlayer.java index 9b6e38659..06773f800 100755 --- a/src/com/android/gallery3d/app/MoviePlayer.java +++ b/src/com/android/gallery3d/app/MoviePlayer.java @@ -67,6 +67,7 @@ import java.io.DataInputStream; import java.io.DataOutputStream; import java.util.HashMap; import java.util.Map; +import java.util.Timer; public class MoviePlayer implements MediaPlayer.OnErrorListener, MediaPlayer.OnCompletionListener, @@ -194,6 +195,18 @@ public class MoviePlayer implements } }; + public interface TimerProgress { + void startTimer(); + } + + private TimerProgress mTimerController = new TimerProgress() { + @Override + public void startTimer() { + mHandler.removeCallbacks(mProgressChecker); + mHandler.post(mProgressChecker); + } + }; + private final BroadcastReceiver mReceiver = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { @@ -234,6 +247,7 @@ public class MoviePlayer implements mVideoView.setOnErrorListener(this); mVideoView.setOnCompletionListener(this); + mVideoView.setTimerProgress(mTimerController); if (mVirtualizer != null) { mVirtualizer.release(); @@ -515,7 +529,7 @@ public class MoviePlayer implements mHandler.postDelayed(mPlayingChecker, 250); } - mHandler.post(mProgressChecker); + mTimerController.startTimer(); } private void pauseVideoMoreThanThreeMinutes() { |