From a19ffced0ec4d1392b5abd31a47001b279d25f8b Mon Sep 17 00:00:00 2001 From: Spike Sprague Date: Tue, 27 Jan 2015 19:13:44 -0800 Subject: [PATCH] set default flashMode and focusMode onto Camera Settings add null checks when accessing flashMode and focusMode bug: 18200939 Change-Id: I622deed48764ff42b5db9a7313c5bdf3253d3f69 --- src/com/android/camera/PhotoModule.java | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/com/android/camera/PhotoModule.java b/src/com/android/camera/PhotoModule.java index b0252294f..f3419ab97 100644 --- a/src/com/android/camera/PhotoModule.java +++ b/src/com/android/camera/PhotoModule.java @@ -1153,7 +1153,7 @@ public class PhotoModule CameraCapabilities.FocusMode focusMode) { CameraCapabilities.Stringifier stringifier = mCameraCapabilities.getStringifier(); SettingsManager settingsManager = mActivity.getSettingsManager(); - if (!CameraCapabilities.FlashMode.NO_FLASH.equals(flashMode)) { + if ((flashMode != null) && (!CameraCapabilities.FlashMode.NO_FLASH.equals(flashMode))) { String flashModeString = stringifier.stringify(flashMode); Log.v(TAG, "override flash setting to: " + flashModeString); settingsManager.set(mAppController.getCameraScope(), Keys.KEY_FLASH_MODE, @@ -1161,10 +1161,12 @@ public class PhotoModule } else { Log.v(TAG, "skip setting flash mode on override due to NO_FLASH"); } - String focusModeString = stringifier.stringify(focusMode); - Log.v(TAG, "override focus setting to: " + focusModeString); - settingsManager.set(mAppController.getCameraScope(), Keys.KEY_FOCUS_MODE, - focusModeString); + if (focusMode != null) { + String focusModeString = stringifier.stringify(focusMode); + Log.v(TAG, "override focus setting to: " + focusModeString); + settingsManager.set(mAppController.getCameraScope(), Keys.KEY_FOCUS_MODE, + focusModeString); + } } @Override @@ -1186,6 +1188,13 @@ public class PhotoModule // Do camera parameter dependent initialization. mCameraSettings = mCameraDevice.getSettings(); + // Set a default flash mode and focus mode + if (mCameraSettings.getCurrentFlashMode() == null) { + mCameraSettings.setFlashMode(CameraCapabilities.FlashMode.NO_FLASH); + } + if (mCameraSettings.getCurrentFocusMode() == null) { + mCameraSettings.setFocusMode(CameraCapabilities.FocusMode.AUTO); + } setCameraParameters(UPDATE_PARAM_ALL); // Set a listener which updates camera parameters based -- 2.11.0