Merge "SnapdragonCamera: fix app freeze with HDR and Macro+"
diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java
index 8517d22..71cb0e4 100644
--- a/src/com/android/camera/PhotoModule.java
+++ b/src/com/android/camera/PhotoModule.java
@@ -3488,6 +3488,22 @@
.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 @@
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.