From e039354291dcd7284af986d85c2f8fec45921f75 Mon Sep 17 00:00:00 2001 From: Jay Wang Date: Thu, 28 May 2015 11:30:15 -0700 Subject: SnapdragonCamera: Always enable FD with TruePortrait on Face detection should always be on when TruePortrait is enabled. Menu item for FD will show on and disabled (not toggleable) when TruePortrait is on. Change-Id: Ibbe8b5aaede2590d2587e9f8094d84f8717a037a --- src/com/android/camera/PhotoModule.java | 50 ++++++++++++++++++++++----------- 1 file changed, 34 insertions(+), 16 deletions(-) (limited to 'src') diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java index 0d699c2b4..682199d72 100644 --- a/src/com/android/camera/PhotoModule.java +++ b/src/com/android/camera/PhotoModule.java @@ -3260,6 +3260,40 @@ public class PhotoModule stillMoreOff); } } + + if (mActivity.getString(R.string.pref_camera_advanced_feature_value_trueportrait_on) + .equals(advancedFeature)) { + // face detection must always be on for truePortrait + if (CameraUtil.isSupported(Parameters.FACE_DETECTION_ON, mParameters.getSupportedFaceDetectionModes())) { + mUI.overrideSettings(CameraSettings.KEY_FACE_DETECTION, Parameters.FACE_DETECTION_ON); + mParameters.setFaceDetectionMode(Parameters.FACE_DETECTION_ON); + if(mFaceDetectionEnabled == false) { + mFaceDetectionEnabled = true; + startFaceDetection(); + } + } + } else { + // Set face detetction parameter. + // clear override to re-enable setting if true portrait is off. + mUI.overrideSettings(CameraSettings.KEY_FACE_DETECTION, null); + + String faceDetection = mPreferences.getString( + CameraSettings.KEY_FACE_DETECTION, + mActivity.getString(R.string.pref_camera_facedetection_default)); + + if (CameraUtil.isSupported(faceDetection, mParameters.getSupportedFaceDetectionModes())) { + mParameters.setFaceDetectionMode(faceDetection); + if(faceDetection.equals("on") && mFaceDetectionEnabled == false) { + mFaceDetectionEnabled = true; + startFaceDetection(); + } + if(faceDetection.equals("off") && mFaceDetectionEnabled == true) { + stopFaceDetection(); + mFaceDetectionEnabled = false; + } + } + } + // Set auto exposure parameter. String autoExposure = mPreferences.getString( CameraSettings.KEY_AUTOEXPOSURE, @@ -3336,22 +3370,6 @@ public class PhotoModule mParameters.setFocusMode(mFocusManager.getFocusMode(false)); } } - // Set face detetction parameter. - String faceDetection = mPreferences.getString( - CameraSettings.KEY_FACE_DETECTION, - mActivity.getString(R.string.pref_camera_facedetection_default)); - - if (CameraUtil.isSupported(faceDetection, mParameters.getSupportedFaceDetectionModes())) { - mParameters.setFaceDetectionMode(faceDetection); - if(faceDetection.equals("on") && mFaceDetectionEnabled == false) { - mFaceDetectionEnabled = true; - startFaceDetection(); - } - if(faceDetection.equals("off") && mFaceDetectionEnabled == true) { - stopFaceDetection(); - mFaceDetectionEnabled = false; - } - } //Set Histogram String histogram = mPreferences.getString( -- cgit v1.2.3