diff options
Diffstat (limited to 'camera2/portability/src/com/android/ex/camera2/portability/AndroidCamera2AgentImpl.java')
-rw-r--r-- | camera2/portability/src/com/android/ex/camera2/portability/AndroidCamera2AgentImpl.java | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/camera2/portability/src/com/android/ex/camera2/portability/AndroidCamera2AgentImpl.java b/camera2/portability/src/com/android/ex/camera2/portability/AndroidCamera2AgentImpl.java index d139c62..fe0bcee 100644 --- a/camera2/portability/src/com/android/ex/camera2/portability/AndroidCamera2AgentImpl.java +++ b/camera2/portability/src/com/android/ex/camera2/portability/AndroidCamera2AgentImpl.java @@ -819,6 +819,7 @@ class AndroidCamera2AgentImpl extends CameraAgent { private final CameraDevice mCamera; private final CameraDeviceInfo.Characteristics mCharacteristics; private final AndroidCamera2Capabilities mCapabilities; + private CameraSettings mLastSettings; public AndroidCamera2ProxyImpl(int cameraIndex, CameraDevice camera, CameraDeviceInfo.Characteristics characteristics, @@ -827,6 +828,7 @@ class AndroidCamera2AgentImpl extends CameraAgent { mCamera = camera; mCharacteristics = characteristics; mCapabilities = new AndroidCamera2Capabilities(properties); + mLastSettings = null; } // TODO: Implement @@ -997,7 +999,10 @@ class AndroidCamera2AgentImpl extends CameraAgent { @Override public CameraSettings getSettings() { - return mCameraHandler.buildSettings(mCapabilities); + if (mLastSettings == null) { + mLastSettings = mCameraHandler.buildSettings(mCapabilities); + } + return mLastSettings; } @Override @@ -1011,9 +1016,13 @@ class AndroidCamera2AgentImpl extends CameraAgent { return false; } - return applySettingsHelper(settings, AndroidCamera2StateHolder.CAMERA_UNCONFIGURED | + if (applySettingsHelper(settings, AndroidCamera2StateHolder.CAMERA_UNCONFIGURED | AndroidCamera2StateHolder.CAMERA_CONFIGURED | - AndroidCamera2StateHolder.CAMERA_PREVIEW_READY); + AndroidCamera2StateHolder.CAMERA_PREVIEW_READY)) { + mLastSettings = settings; + return true; + } + return false; } // TODO: Implement |