OSDN Git Service

Don't record video before preview is started
authorMichael Kolb <kolby@google.com>
Mon, 11 Mar 2013 19:37:40 +0000 (12:37 -0700)
committerThe Android Automerger <android-build@android.com>
Mon, 11 Mar 2013 22:53:37 +0000 (15:53 -0700)
  Bug: 8358998

Change-Id: I5d2380020b3e999f904b8a715324db13b25ebb5a

src/com/android/camera/VideoModule.java

index 7bda657..a7a5335 100644 (file)
@@ -810,7 +810,9 @@ public class VideoModule implements CameraModule,
     public void onResumeAfterSuper() {
         if (mActivity.mOpenCameraFail || mActivity.mCameraDisabled)
             return;
-
+        if (mShutterButton != null) {
+            mShutterButton.setEnabled(false);
+        }
         mZoomValue = 0;
 
         showVideoSnapshotUI(false);
@@ -884,7 +886,6 @@ public class VideoModule implements CameraModule,
             }
         }
 
-        mPreviewing = true;
 
         setDisplayOrientation();
         mActivity.mCameraDevice.setDisplayOrientation(mCameraDisplayOrientation);
@@ -903,9 +904,13 @@ public class VideoModule implements CameraModule,
                     mActivity.mCameraDevice.setPreviewDisplayAsync(mPreviewSurfaceView.getHolder());
                 }
                 mActivity.mCameraDevice.startPreviewAsync();
+                mPreviewing = true;
+                onPreviewStarted();
             } else {
                 initializeEffectsPreview();
                 mEffectsRecorder.startPreview();
+                mPreviewing = true;
+                onPreviewStarted();
             }
         } catch (Throwable ex) {
             closeCamera();
@@ -922,6 +927,13 @@ public class VideoModule implements CameraModule,
                 }
             });
         }
+
+    }
+
+    private void onPreviewStarted() {
+        if (mShutterButton != null) {
+            mShutterButton.setEnabled(true);
+        }
     }
 
     private void stopPreview() {