diff options
author | Likai Ding <likaid@codeaurora.org> | 2015-08-19 14:34:38 +0800 |
---|---|---|
committer | Likai Ding <likaid@codeaurora.org> | 2015-08-19 14:34:38 +0800 |
commit | aabfcbd403000270ec561c8f10bf98abdb974266 (patch) | |
tree | 2cfdd09bafbaec7f32d4364b952e7800261e4988 /src | |
parent | 5a3ddfb2e197bc8f9cdbca885adcdff3df0aa75b (diff) | |
download | android_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.java | 34 |
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. |