From 4bd40976f840c56443f99cef10c6b32b9c7f0f63 Mon Sep 17 00:00:00 2001 From: tibbi Date: Sun, 5 Nov 2017 11:17:07 +0100 Subject: [PATCH] fix focusing on some devices --- .../main/kotlin/com/simplemobiletools/camera/Preview.kt | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/camera/Preview.kt b/app/src/main/kotlin/com/simplemobiletools/camera/Preview.kt index bae37795..14028b88 100644 --- a/app/src/main/kotlin/com/simplemobiletools/camera/Preview.kt +++ b/app/src/main/kotlin/com/simplemobiletools/camera/Preview.kt @@ -361,6 +361,7 @@ class Preview : ViewGroup, SurfaceHolder.Callback, MediaScannerConnection.OnScan mLastClickX = width / 2 mLastClickY = height / 2 } + val focusRect = calculateFocusArea(mLastClickX.toFloat(), mLastClickY.toFloat()) val focusAreas = ArrayList(1) focusAreas.add(Camera.Area(focusRect, 1000)) @@ -371,6 +372,11 @@ class Preview : ViewGroup, SurfaceHolder.Callback, MediaScannerConnection.OnScan } try { + val focusModes = mParameters!!.supportedFocusModes + if (focusModes.contains(Camera.Parameters.FOCUS_MODE_AUTO)) { + mParameters!!.focusMode = Camera.Parameters.FOCUS_MODE_AUTO + } + mCamera!!.parameters = mParameters mCamera!!.autoFocus { success, camera -> if (camera == null || mCamera == null) { @@ -378,7 +384,6 @@ class Preview : ViewGroup, SurfaceHolder.Callback, MediaScannerConnection.OnScan } camera.cancelAutoFocus() - val focusModes = mParameters!!.supportedFocusModes if (focusModes.contains(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE)) mParameters!!.focusMode = Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE