summaryrefslogtreecommitdiffstats
path: root/src/com/android/camera/Camera.java
diff options
context:
space:
mode:
authorWu-cheng Li <wuchengli@google.com>2011-10-20 08:28:47 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2011-10-20 08:28:47 -0700
commitcf2f19fb053bfe7f39c552b67ffdfc72119ab2d1 (patch)
treeda52d514af995423b8d996040e7f3abba8e74802 /src/com/android/camera/Camera.java
parent27c97af52157672f6201215d2e07497ff6361a8e (diff)
parent53be34deae057cfa297c3ee73eee91f880272650 (diff)
downloadpackages_apps_LegacyCamera-cf2f19fb053bfe7f39c552b67ffdfc72119ab2d1.zip
packages_apps_LegacyCamera-cf2f19fb053bfe7f39c552b67ffdfc72119ab2d1.tar.gz
packages_apps_LegacyCamera-cf2f19fb053bfe7f39c552b67ffdfc72119ab2d1.tar.bz2
Merge "Fix AE and AWB lock were incorrectly unlocked during autofocus." into ics-mr0
Diffstat (limited to 'src/com/android/camera/Camera.java')
-rw-r--r--src/com/android/camera/Camera.java24
1 files changed, 8 insertions, 16 deletions
diff --git a/src/com/android/camera/Camera.java b/src/com/android/camera/Camera.java
index e3b1450..067ae23 100644
--- a/src/com/android/camera/Camera.java
+++ b/src/com/android/camera/Camera.java
@@ -124,7 +124,6 @@ public class Camera extends ActivityBase implements FocusManager.Listener,
private boolean mMeteringAreaSupported;
private boolean mAeLockSupported;
private boolean mAwbLockSupported;
- private boolean mAeAwbLock;
private MyOrientationEventListener mOrientationListener;
// The degrees of the device rotated clockwise from its natural orientation.
@@ -1361,18 +1360,10 @@ public class Camera extends ActivityBase implements FocusManager.Listener,
// Do not do focus if there is not enough storage.
if (pressed && !canTakePicture()) return;
- // Lock AE and AWB so users can half-press shutter and recompose.
- mAeAwbLock = pressed;
- if (mAeAwbLock && (mAeLockSupported || mAwbLockSupported)) {
- setCameraParameters(UPDATE_PARAM_PREFERENCE);
- }
-
- mFocusManager.doFocus(pressed);
-
- // Unlock AE and AWB after cancelAutoFocus. Camera API does not
- // guarantee setParameters can be called during autofocus.
- if (!mAeAwbLock && (mAeLockSupported || mAwbLockSupported)) {
- setCameraParameters(UPDATE_PARAM_PREFERENCE);
+ if (pressed) {
+ mFocusManager.onShutterDown();
+ } else {
+ mFocusManager.onShutterUp();
}
}
@@ -1761,7 +1752,8 @@ public class Camera extends ActivityBase implements FocusManager.Listener,
setPreviewDisplay(mSurfaceHolder);
setDisplayOrientation();
- mAeAwbLock = false; // Unlock AE and AWB.
+
+ mFocusManager.setAeAwbLock(false); // Unlock AE and AWB.
setCameraParameters(UPDATE_PARAM_ALL);
// If the focus mode is continuous autofocus, call cancelAutoFocus to
// resume it because it may have been paused by autoFocus call.
@@ -1835,11 +1827,11 @@ public class Camera extends ActivityBase implements FocusManager.Listener,
private void updateCameraParametersPreference() {
if (mAeLockSupported) {
- mParameters.setAutoExposureLock(mAeAwbLock);
+ mParameters.setAutoExposureLock(mFocusManager.getAeAwbLock());
}
if (mAwbLockSupported) {
- mParameters.setAutoWhiteBalanceLock(mAeAwbLock);
+ mParameters.setAutoWhiteBalanceLock(mFocusManager.getAeAwbLock());
}
if (mFocusAreaSupported) {