diff options
-rw-r--r-- | src/com/android/camera/CaptureModule.java | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/com/android/camera/CaptureModule.java b/src/com/android/camera/CaptureModule.java index a3090277d..7c3e9b418 100644 --- a/src/com/android/camera/CaptureModule.java +++ b/src/com/android/camera/CaptureModule.java @@ -378,6 +378,8 @@ public class CaptureModule implements CameraModule, PhotoController, private Size mSupportedMaxPictureSize; private Size mSupportedRawPictureSize; + private long mIsoExposureTime; + private int mIsoSensitivity; private class SelfieThread extends Thread { public void run() { @@ -4065,10 +4067,24 @@ public class CaptureModule implements CameraModule, PhotoController, if (value.equals("auto")) { request.set(SELECT_PRIORITY, 0); request.set(ISO_EXP, 0L); + if (request.get(CaptureRequest.SENSOR_EXPOSURE_TIME) == null) { + request.set(CaptureRequest.SENSOR_EXPOSURE_TIME, mIsoExposureTime); + } + if (request.get(CaptureRequest.SENSOR_SENSITIVITY) == null) { + request.set(CaptureRequest.SENSOR_SENSITIVITY, mIsoSensitivity); + } } else { long intValue = SettingsManager.KEY_ISO_INDEX.get(value); request.set(SELECT_PRIORITY, 0); request.set(ISO_EXP, intValue); + if (request.get(CaptureRequest.SENSOR_EXPOSURE_TIME) != null) { + mIsoExposureTime = request.get(CaptureRequest.SENSOR_EXPOSURE_TIME); + } + if (request.get(CaptureRequest.SENSOR_SENSITIVITY) != null) { + mIsoSensitivity = request.get(CaptureRequest.SENSOR_SENSITIVITY); + } + request.set(CaptureRequest.SENSOR_EXPOSURE_TIME, null); + request.set(CaptureRequest.SENSOR_SENSITIVITY, null); } } |