summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2013-11-23 13:58:31 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2013-11-23 13:58:31 -0800
commit1c7734057201ffd1b6d165d9e24793ef3d213043 (patch)
tree72d9d93990cb8fa5c1c399ff7ccff610e3e34e72 /src/com/android/camera
parenta2ee991f08b4ece40d74b3f39b789e9cd8d9eb7f (diff)
parent110c926aca9918cdd2f30861be64a4497ef25b66 (diff)
downloadandroid_packages_apps_Snap-1c7734057201ffd1b6d165d9e24793ef3d213043.tar.gz
android_packages_apps_Snap-1c7734057201ffd1b6d165d9e24793ef3d213043.tar.bz2
android_packages_apps_Snap-1c7734057201ffd1b6d165d9e24793ef3d213043.zip
Merge "Camera: Fix instability during ZSL snapshot"
Diffstat (limited to 'src/com/android/camera')
-rw-r--r--src/com/android/camera/FocusOverlayManager.java1
-rw-r--r--src/com/android/camera/PhotoModule.java16
2 files changed, 13 insertions, 4 deletions
diff --git a/src/com/android/camera/FocusOverlayManager.java b/src/com/android/camera/FocusOverlayManager.java
index 686122723..37d632745 100644
--- a/src/com/android/camera/FocusOverlayManager.java
+++ b/src/com/android/camera/FocusOverlayManager.java
@@ -570,7 +570,6 @@ public class FocusOverlayManager {
}
private boolean needAutoFocusCall() {
- if(mZslEnabled) return false;
String focusMode = getFocusMode();
return !(focusMode.equals(Parameters.FOCUS_MODE_INFINITY)
|| focusMode.equals(Parameters.FOCUS_MODE_FIXED)
diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java
index 746cc6733..176885ce4 100644
--- a/src/com/android/camera/PhotoModule.java
+++ b/src/com/android/camera/PhotoModule.java
@@ -976,6 +976,10 @@ public class PhotoModule
}else if ((mReceivedSnapNum == mBurstSnapNum)
&& (mCameraState != LONGSHOT)){
mFocusManager.resetTouchFocus();
+ if (CameraUtil.FOCUS_MODE_CONTINUOUS_PICTURE.equals(
+ mFocusManager.getFocusMode())) {
+ mCameraDevice.cancelAutoFocus();
+ }
setCameraState(IDLE);
}
@@ -1502,6 +1506,10 @@ public class PhotoModule
} else {
setCameraState(IDLE);
mFocusManager.resetTouchFocus();
+ if (CameraUtil.FOCUS_MODE_CONTINUOUS_PICTURE.equals(
+ mFocusManager.getFocusMode())) {
+ mCameraDevice.cancelAutoFocus();
+ }
}
}
}
@@ -1810,9 +1818,11 @@ public class PhotoModule
@Override
public void cancelAutoFocus() {
- mCameraDevice.cancelAutoFocus();
- setCameraState(IDLE);
- setCameraParameters(UPDATE_PARAM_PREFERENCE);
+ if (null != mCameraDevice ) {
+ mCameraDevice.cancelAutoFocus();
+ setCameraState(IDLE);
+ setCameraParameters(UPDATE_PARAM_PREFERENCE);
+ }
}
// Preview area is touched. Handle touch focus.