summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLikai Ding <likaid@codeaurora.org>2015-08-19 14:34:38 +0800
committerLikai Ding <likaid@codeaurora.org>2015-08-19 14:34:38 +0800
commitaabfcbd403000270ec561c8f10bf98abdb974266 (patch)
tree2cfdd09bafbaec7f32d4364b952e7800261e4988 /src
parent5a3ddfb2e197bc8f9cdbca885adcdff3df0aa75b (diff)
downloadandroid_packages_apps_Snap-aabfcbd403000270ec561c8f10bf98abdb974266.tar.gz
android_packages_apps_Snap-aabfcbd403000270ec561c8f10bf98abdb974266.tar.bz2
android_packages_apps_Snap-aabfcbd403000270ec561c8f10bf98abdb974266.zip
SnapdragonCamera: fix app freeze with HDR and Macro+
When scenemode is set to HDR and then Macro+, HDR is not turned off. This will cause media server crash and app freeze. Turn off HDR when Macro+ or Optizoom is enabled. Change-Id: I51d7df55bb2c0dffd94d1ddadababaad62e3fe27 CRs-Fixed: 879081
Diffstat (limited to 'src')
-rw-r--r--src/com/android/camera/PhotoModule.java34
1 files changed, 16 insertions, 18 deletions
diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java
index 8517d2294..71cb0e46c 100644
--- a/src/com/android/camera/PhotoModule.java
+++ b/src/com/android/camera/PhotoModule.java
@@ -3488,6 +3488,22 @@ public class PhotoModule
.pref_camera_advanced_feature_value_refocus_on);
String optizoomOn = mActivity.getString(R.string
.pref_camera_advanced_feature_value_optizoom_on);
+ if (refocusOn.equals(mSceneMode)) {
+ try {
+ mSceneMode = Parameters.SCENE_MODE_AUTO;
+ mUI.setPreference(CameraSettings.KEY_ADVANCED_FEATURES, refocusOn);
+ mUI.showRefocusDialog();
+ } catch (NullPointerException e) {
+ }
+ } else if (optizoomOn.equals(mSceneMode)) {
+ try {
+ mSceneMode = Parameters.SCENE_MODE_AUTO;
+ mUI.setPreference(CameraSettings.KEY_ADVANCED_FEATURES, optizoomOn);
+ } catch (NullPointerException e) {
+ }
+ } else if (mSceneMode == null) {
+ mSceneMode = Parameters.SCENE_MODE_AUTO;
+ }
if (CameraUtil.isSupported(mSceneMode, mParameters.getSupportedSceneModes())) {
if (!mParameters.getSceneMode().equals(mSceneMode)) {
@@ -3499,24 +3515,6 @@ public class PhotoModule
mCameraDevice.setParameters(mParameters);
mParameters = mCameraDevice.getParameters();
}
- } else {
- if (refocusOn.equals(mSceneMode)) {
- try {
- mUI.setPreference(CameraSettings.KEY_ADVANCED_FEATURES, refocusOn);
- mUI.showRefocusDialog();
- } catch (NullPointerException e) {
- }
- } else if (optizoomOn.equals(mSceneMode)) {
- try {
- mUI.setPreference(CameraSettings.KEY_ADVANCED_FEATURES, optizoomOn);
- } catch (NullPointerException e) {
- }
- } else {
- mSceneMode = mParameters.getSceneMode();
- if (mSceneMode == null) {
- mSceneMode = Parameters.SCENE_MODE_AUTO;
- }
- }
}
// Set JPEG quality.