diff options
Diffstat (limited to 'src/com/android/camera/one/v2/OneCameraZslImpl.java')
-rw-r--r-- | src/com/android/camera/one/v2/OneCameraZslImpl.java | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/com/android/camera/one/v2/OneCameraZslImpl.java b/src/com/android/camera/one/v2/OneCameraZslImpl.java index 97faf0f83..d53e89452 100644 --- a/src/com/android/camera/one/v2/OneCameraZslImpl.java +++ b/src/com/android/camera/one/v2/OneCameraZslImpl.java @@ -355,6 +355,27 @@ public class OneCameraZslImpl extends AbstractOneCamera { mMediaActionSound.load(MediaActionSound.SHUTTER_CLICK); } + @Override + public void setFocusDistanceListener(FocusDistanceListener focusDistanceListener) { + if(mFocusDistanceListener == null) { + mCaptureManager.addMetadataChangeListener(CaptureResult.LENS_FOCUS_DISTANCE, + new ImageCaptureManager.MetadataChangeListener() { + @Override + public void onImageMetadataChange(Key<?> key, Object oldValue, + Object newValue, + CaptureResult result) { + Integer state = result.get(CaptureResult.LENS_STATE); + if (newValue != null && state != null) { + mFocusDistanceListener.onFocusDistance((float) newValue, state == 1); + } else if (newValue != null) { + mFocusDistanceListener.onFocusDistance((float) newValue, true); + } + } + }); + } + mFocusDistanceListener = focusDistanceListener; + } + /** * @return The largest supported picture size. */ |