diff options
| author | Yu Yang <yuyang@codeaurora.org> | 2013-09-23 14:15:59 +0800 |
|---|---|---|
| committer | Steve Kondik <shade@chemlab.org> | 2013-12-10 11:32:30 -0800 |
| commit | 8f01f0805042e3e9f3a83205fa26c9513fa10a4a (patch) | |
| tree | 6e7bf932b81d8732539cf1586233df9d4750b75e | |
| parent | af36c1f061b4c5848d9995c337f84a4faa09a86b (diff) | |
| download | android_packages_apps_Gallery2-8f01f0805042e3e9f3a83205fa26c9513fa10a4a.tar.gz android_packages_apps_Gallery2-8f01f0805042e3e9f3a83205fa26c9513fa10a4a.tar.bz2 android_packages_apps_Gallery2-8f01f0805042e3e9f3a83205fa26c9513fa10a4a.zip | |
Camera: Fix camcorder pause/resume issue
Keep the pause button disabled when it's clicked,
It'll be re-enabled delay PAUSE_BUTTON_TIMEOUT.
Change-Id: Ib0f3f69632cfd22e671c79732d6b03fd44bbe5c4
| -rw-r--r-- | src/com/android/camera/VideoModule.java | 12 | ||||
| -rw-r--r-- | src/com/android/camera/VideoUI.java | 6 |
2 files changed, 18 insertions, 0 deletions
diff --git a/src/com/android/camera/VideoModule.java b/src/com/android/camera/VideoModule.java index de6001879..b3b31700e 100644 --- a/src/com/android/camera/VideoModule.java +++ b/src/com/android/camera/VideoModule.java @@ -94,10 +94,12 @@ public class VideoModule implements CameraModule, private static final int SWITCH_CAMERA_START_ANIMATION = 9; private static final int HIDE_SURFACE_VIEW = 10; private static final int CAPTURE_ANIMATION_DONE = 11; + private static final int ENABLE_PAUSE_BUTTON = 13; private static final int SCREEN_DELAY = 2 * 60 * 1000; private static final long SHUTTER_BUTTON_TIMEOUT = 500L; // 500ms + private static final long PAUSE_BUTTON_TIMEOUT = 500L; // 500ms /** * An unpublished intent flag requesting to start recording straight away @@ -275,6 +277,10 @@ public class VideoModule implements CameraModule, mUI.enableShutter(true); break; + case ENABLE_PAUSE_BUTTON: + mUI.enablePause(true); + break; + case CLEAR_SCREEN_DELAY: { mActivity.getWindow().clearFlags( WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); @@ -2654,10 +2660,16 @@ public class VideoModule implements CameraModule, @Override public void onButtonPause() { pauseVideoRecording(); + mUI.enablePause(false); + mHandler.sendEmptyMessageDelayed( + ENABLE_PAUSE_BUTTON, PAUSE_BUTTON_TIMEOUT); } @Override public void onButtonContinue() { resumeVideoRecording(); + mUI.enablePause(false); + mHandler.sendEmptyMessageDelayed( + ENABLE_PAUSE_BUTTON, PAUSE_BUTTON_TIMEOUT); } } diff --git a/src/com/android/camera/VideoUI.java b/src/com/android/camera/VideoUI.java index 69a123e63..0dd5de9de 100644 --- a/src/com/android/camera/VideoUI.java +++ b/src/com/android/camera/VideoUI.java @@ -382,6 +382,12 @@ public class VideoUI implements SurfaceHolder.Callback, PieRenderer.PieListener, mRootView.removeOnLayoutChangeListener(mLayoutListener); } + public void enablePause(boolean enable) { + if (mPauseButton != null) { + mPauseButton.setEnabled(enable); + } + } + // PieListener @Override public void onPieOpened(int centerX, int centerY) { |
