diff options
author | Eino-Ville Talvala <etalvala@google.com> | 2013-06-04 09:19:14 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2013-06-04 09:19:14 -0700 |
commit | cbbd6c8354f7323933081b217ce53461d99215c4 (patch) | |
tree | 57c09180d0ba7b904d1900b438ecd9c508fcccb3 | |
parent | e64d41332776e3c91f51c3239589695bf2cd0aeb (diff) | |
parent | 8f908c0c211f8051f339bc85b01a6450f0dfd7d0 (diff) | |
download | frameworks_av-cbbd6c8354f7323933081b217ce53461d99215c4.zip frameworks_av-cbbd6c8354f7323933081b217ce53461d99215c4.tar.gz frameworks_av-cbbd6c8354f7323933081b217ce53461d99215c4.tar.bz2 |
am 8f908c0c: Merge "Camera2/3: Don\'t trigger AF when in INFINITY focus mode." into jb-mr2-dev
* commit '8f908c0c211f8051f339bc85b01a6450f0dfd7d0':
Camera2/3: Don't trigger AF when in INFINITY focus mode.
-rw-r--r-- | services/camera/libcameraservice/Camera2Client.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/services/camera/libcameraservice/Camera2Client.cpp b/services/camera/libcameraservice/Camera2Client.cpp index dd50e3c..5fdec34 100644 --- a/services/camera/libcameraservice/Camera2Client.cpp +++ b/services/camera/libcameraservice/Camera2Client.cpp @@ -1007,8 +1007,12 @@ status_t Camera2Client::autoFocus() { * If the camera does not support auto-focus, it is a no-op and * onAutoFocus(boolean, Camera) callback will be called immediately * with a fake value of success set to true. + * + * Similarly, if focus mode is set to INFINITY, there's no reason to + * bother the HAL. */ - if (l.mParameters.focusMode == Parameters::FOCUS_MODE_FIXED) { + if (l.mParameters.focusMode == Parameters::FOCUS_MODE_FIXED || + l.mParameters.focusMode == Parameters::FOCUS_MODE_INFINITY) { notifyImmediately = true; notifySuccess = true; } @@ -1068,6 +1072,11 @@ status_t Camera2Client::cancelAutoFocus() { int triggerId; { SharedParameters::Lock l(mParameters); + // Canceling does nothing in FIXED or INFINITY modes + if (l.mParameters.focusMode == Parameters::FOCUS_MODE_FIXED || + l.mParameters.focusMode == Parameters::FOCUS_MODE_INFINITY) { + return OK; + } triggerId = ++l.mParameters.afTriggerCounter; // When using triggerAfWithAuto quirk, may need to reset focus mode to |