From 0405e33f327e594260a165d04bf8bb07b9c29ba8 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(-) diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java index cdeb490ed..ba46011b8 100644 --- a/src/com/android/camera/PhotoModule.java +++ b/src/com/android/camera/PhotoModule.java @@ -3113,6 +3113,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, @@ -3199,22 +3233,6 @@ public class PhotoModule mParameters.setFocusMode(mFocusManager.getFocusMode()); } } - // 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