diff options
author | Jay Wang <jaywang@codeaurora.org> | 2016-04-04 19:05:21 -0700 |
---|---|---|
committer | Jay Wang <jaywang@codeaurora.org> | 2016-05-26 16:48:17 -0700 |
commit | 0abd747b096e3786cd90a66605e1a39d92453b15 (patch) | |
tree | facf0ebc6a4d20c14b454a39b429a39cadf495a8 /src/com/android | |
parent | d3383e87fce92ecfde2a8916d121def3fe101566 (diff) | |
download | android_packages_apps_Snap-0abd747b096e3786cd90a66605e1a39d92453b15.tar.gz android_packages_apps_Snap-0abd747b096e3786cd90a66605e1a39d92453b15.tar.bz2 android_packages_apps_Snap-0abd747b096e3786cd90a66605e1a39d92453b15.zip |
SnapdragonCamera: disable instant capture in some cases.
1. Disable instant capture when ZSL is off or advanced features
are enabled
2. Change the instant capture option to support the selection of
aggressive AEC and fast AEC
CRs-Fixed: 998509
Change-Id: I60f7ed3a0fc93627dbf7527fbec2a60605aad683
Diffstat (limited to 'src/com/android')
-rw-r--r-- | src/com/android/camera/CameraSettings.java | 10 | ||||
-rw-r--r-- | src/com/android/camera/PhotoMenu.java | 4 | ||||
-rw-r--r-- | src/com/android/camera/PhotoModule.java | 56 |
3 files changed, 43 insertions, 27 deletions
diff --git a/src/com/android/camera/CameraSettings.java b/src/com/android/camera/CameraSettings.java index a12ce5de0..66807b615 100644 --- a/src/com/android/camera/CameraSettings.java +++ b/src/com/android/camera/CameraSettings.java @@ -167,6 +167,7 @@ public class CameraSettings { public static final String KEY_QC_SEE_MORE_MODE = "see-more"; public static final String KEY_QC_NOISE_REDUCTION_MODE = "noise-reduction-mode"; public static final String KEY_QC_INSTANT_CAPTURE = "instant-capture"; + public static final String KEY_QC_INSTANT_CAPTURE_VALUES = "instant-capture-values"; public static final String KEY_INTERNAL_PREVIEW_RESTART = "internal-restart"; public static final String KEY_QC_ZSL_HDR_SUPPORTED = "zsl-hdr-supported"; @@ -1402,14 +1403,11 @@ public class CameraSettings { public static boolean isInstantCaptureSupported(Parameters params) { boolean ret = false; if (null != params) { - // TODO: need to uncomment this code once get parameter - // is supported - //String val = params.get(KEY_QC_INSTANT_CAPTURE); - //if (null != val) { + String val = params.get(KEY_QC_INSTANT_CAPTURE_VALUES); + if (null != val) { ret = true; - //} + } } return ret; } - } diff --git a/src/com/android/camera/PhotoMenu.java b/src/com/android/camera/PhotoMenu.java index b9ecdcc8d..46da31cfe 100644 --- a/src/com/android/camera/PhotoMenu.java +++ b/src/com/android/camera/PhotoMenu.java @@ -731,6 +731,8 @@ public class PhotoMenu extends MenuController mActivity.getString(R.string.pref_camera_advanced_feature_default)); popup1.setPreferenceEnabled(CameraSettings.KEY_ADVANCED_FEATURES, false); + popup1.setPreferenceEnabled(CameraSettings.KEY_INSTANT_CAPTURE, false); + if(!TsMakeupManager.HAS_TS_MAKEUP) { if (mHdrSwitcher.getVisibility() == View.VISIBLE) { buttonSetEnabled(mHdrSwitcher, true); @@ -752,7 +754,7 @@ public class PhotoMenu extends MenuController popup1.setPreferenceEnabled(CameraSettings.KEY_COLOR_EFFECT, false); popup1.setPreferenceEnabled(CameraSettings.KEY_TOUCH_AF_AEC, false); popup1.setPreferenceEnabled(CameraSettings.KEY_SCENE_MODE, false); - + popup1.setPreferenceEnabled(CameraSettings.KEY_INSTANT_CAPTURE, false); setPreference(CameraSettings.KEY_CAMERA_HDR, mSettingOff); if(!TsMakeupManager.HAS_TS_MAKEUP) { if (mHdrSwitcher.getVisibility() == View.VISIBLE) { diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java index 7324484ae..880b1e829 100644 --- a/src/com/android/camera/PhotoModule.java +++ b/src/com/android/camera/PhotoModule.java @@ -2939,10 +2939,10 @@ public class PhotoModule CameraSettings.KEY_INSTANT_CAPTURE, mActivity.getString(R.string.pref_camera_instant_capture_default)); if (instantCapture.equals(mActivity.getString( - R.string.pref_camera_instant_capture_value_enable))) { - return true; + R.string.pref_camera_instant_capture_value_disable))) { + return false; } - return false; + return true; } private void qcomUpdateAdvancedFeatures(String ubiFocus, @@ -3225,23 +3225,6 @@ public class PhotoModule mParameters.set(CameraSettings.KEY_SNAPCAM_HDR_NEED_1X, hdrNeed1x); } - // Set Instant Capture - String instantCapture = mPreferences.getString( - CameraSettings.KEY_INSTANT_CAPTURE, - mActivity.getString(R.string.pref_camera_instant_capture_default)); - - if (instantCapture.equals(mActivity.getString( - R.string.pref_camera_instant_capture_value_enable))) { - if (!mInstantCaptureSnapShot) { - // Disable instant capture after first snapshot is taken - instantCapture = mActivity.getString( - R.string.pref_camera_instant_capture_value_disable); - } - } - Log.v(TAG, "Instant capture = " + instantCapture + ", mInstantCaptureSnapShot = " - + mInstantCaptureSnapShot); - mParameters.set(CameraSettings.KEY_QC_INSTANT_CAPTURE, instantCapture); - // Set Advanced features. String advancedFeature = mPreferences.getString( CameraSettings.KEY_ADVANCED_FEATURES, @@ -3491,6 +3474,39 @@ public class PhotoModule } } + // Set Instant Capture + String instantCapture = mPreferences.getString( + CameraSettings.KEY_INSTANT_CAPTURE, + mActivity.getString(R.string.pref_camera_instant_capture_default)); + + if (!instantCapture.equals(mActivity.getString( + R.string.pref_camera_instant_capture_value_disable))) { + if (zsl.equals("on") && + advancedFeature.equals(mActivity.getString(R.string.pref_camera_advanced_feature_value_none))) { + if (!mInstantCaptureSnapShot) { + // Disable instant capture after first snapshot is taken + instantCapture = mActivity.getString( + R.string.pref_camera_instant_capture_value_disable); + } + } else { + mParameters.set(CameraSettings.KEY_QC_INSTANT_CAPTURE, + mActivity.getString(R.string.pref_camera_instant_capture_value_disable)); + instantCapture = mActivity.getString( + R.string.pref_camera_instant_capture_value_disable); + mActivity.runOnUiThread(new Runnable() { + @Override + public void run() { + mUI.overrideSettings(CameraSettings.KEY_INSTANT_CAPTURE, + mActivity.getString(R.string.pref_camera_instant_capture_value_disable)); + } + }); + } + } + Log.v(TAG, "Instant capture = " + instantCapture + ", mInstantCaptureSnapShot = " + + mInstantCaptureSnapShot); + mParameters.set(CameraSettings.KEY_QC_INSTANT_CAPTURE, instantCapture); + + //Set Histogram String histogram = mPreferences.getString( CameraSettings.KEY_HISTOGRAM, |