summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--[-rwxr-xr-x]src/com/android/camera/VideoModule.java21
1 files changed, 16 insertions, 5 deletions
diff --git a/src/com/android/camera/VideoModule.java b/src/com/android/camera/VideoModule.java
index a93cff611..dcee0c743 100755..100644
--- a/src/com/android/camera/VideoModule.java
+++ b/src/com/android/camera/VideoModule.java
@@ -98,6 +98,7 @@ public class VideoModule implements CameraModule,
private static final int SHOW_TAP_TO_SNAPSHOT_TOAST = 7;
private static final int SWITCH_CAMERA = 8;
private static final int SWITCH_CAMERA_START_ANIMATION = 9;
+ private static final int HANDLE_FLASH_TORCH_DELAY = 10;
private static final int SCREEN_DELAY = 2 * 60 * 1000;
@@ -415,6 +416,11 @@ public class VideoModule implements CameraModule,
break;
}
+ case HANDLE_FLASH_TORCH_DELAY: {
+ forceFlashOff(!mPreviewFocused);
+ break;
+ }
+
default:
Log.v(TAG, "Unhandled message: " + msg.what);
break;
@@ -1218,7 +1224,7 @@ public class VideoModule implements CameraModule,
setDisplayOrientation();
mCameraDevice.setDisplayOrientation(mCameraDisplayOrientation);
- setCameraParameters();
+ setCameraParameters(true);
try {
mCameraDevice.setPreviewDisplay(sh);
@@ -1313,6 +1319,7 @@ public class VideoModule implements CameraModule,
mHandler.removeMessages(CHECK_DISPLAY_ROTATION);
mHandler.removeMessages(SWITCH_CAMERA);
mHandler.removeMessages(SWITCH_CAMERA_START_ANIMATION);
+ mHandler.removeMessages(HANDLE_FLASH_TORCH_DELAY);
mPendingSwitchCameraId = -1;
mSwitchingCamera = false;
mPreferenceRead = false;
@@ -2589,7 +2596,7 @@ public class VideoModule implements CameraModule,
}
@SuppressWarnings("deprecation")
- private void setCameraParameters() {
+ private void setCameraParameters(boolean isFlashDelay) {
Log.d(TAG,"Preview dimension in App->"+mDesiredPreviewWidth+"X"+mDesiredPreviewHeight);
mParameters.setPreviewSize(mDesiredPreviewWidth, mDesiredPreviewHeight);
mParameters.set("video-size", mProfile.videoFrameWidth+"x"+mProfile.videoFrameHeight);
@@ -2602,7 +2609,11 @@ public class VideoModule implements CameraModule,
mParameters.setPreviewFrameRate(mProfile.videoFrameRate);
}
- forceFlashOffIfSupported(!mPreviewFocused);
+ if (isFlashDelay) {
+ mHandler.sendEmptyMessageDelayed(HANDLE_FLASH_TORCH_DELAY, 800);
+ } else {
+ forceFlashOffIfSupported(!mPreviewFocused);
+ }
videoWidth = mProfile.videoFrameWidth;
videoHeight = mProfile.videoFrameHeight;
@@ -2777,7 +2788,7 @@ public class VideoModule implements CameraModule,
resizeForPreviewAspectRatio();
startPreview(); // Parameters will be set in startPreview().
} else {
- setCameraParameters();
+ setCameraParameters(false);
}
mRestartPreview = false;
mUI.updateOnScreenIndicators(mParameters, mPreferences);
@@ -2906,7 +2917,7 @@ public class VideoModule implements CameraModule,
@Override
public void onPreviewFocusChanged(boolean previewFocused) {
mUI.onPreviewFocusChanged(previewFocused);
- forceFlashOff(!previewFocused);
+ mHandler.sendEmptyMessageDelayed(HANDLE_FLASH_TORCH_DELAY, 800);
mPreviewFocused = previewFocused;
}