From 4db01a684875fe9cdf0680720648b574ec94db70 Mon Sep 17 00:00:00 2001 From: Maurits van Beusekom Date: Wed, 13 Jan 2021 12:31:47 +0100 Subject: [PATCH 1/3] Copy SCALER_CROP_REGION from preview to final capture builder --- .../android/src/main/java/io/flutter/plugins/camera/Camera.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/camera/camera/android/src/main/java/io/flutter/plugins/camera/Camera.java b/packages/camera/camera/android/src/main/java/io/flutter/plugins/camera/Camera.java index 5dba68eed723..18f5e1a14e30 100644 --- a/packages/camera/camera/android/src/main/java/io/flutter/plugins/camera/Camera.java +++ b/packages/camera/camera/android/src/main/java/io/flutter/plugins/camera/Camera.java @@ -543,11 +543,13 @@ private void runPictureCapture() { final CaptureRequest.Builder captureBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE); captureBuilder.addTarget(pictureImageReader.getSurface()); + captureBuilder.set(CaptureRequest.SCALER_CROP_REGION, captureRequestBuilder.get(CaptureRequest.SCALER_CROP_REGION)); captureBuilder.set( CaptureRequest.JPEG_ORIENTATION, lockedCaptureOrientation == null ? deviceOrientationListener.getMediaOrientation() : deviceOrientationListener.getMediaOrientation(lockedCaptureOrientation)); + switch (flashMode) { case off: captureBuilder.set(CaptureRequest.CONTROL_AE_MODE, CaptureRequest.CONTROL_AE_MODE_ON); From 5e8ea8f5430eef7b82e69d43eef9c408150a0dc6 Mon Sep 17 00:00:00 2001 From: Maurits van Beusekom Date: Wed, 13 Jan 2021 12:37:02 +0100 Subject: [PATCH 2/3] Update version number --- packages/camera/camera/CHANGELOG.md | 4 ++++ packages/camera/camera/pubspec.yaml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/camera/camera/CHANGELOG.md b/packages/camera/camera/CHANGELOG.md index 6ce8737862f4..972ca5a31503 100644 --- a/packages/camera/camera/CHANGELOG.md +++ b/packages/camera/camera/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.7.0+4 + +* Make sure the configured zoom scale is copied over to the final capture builder on Android. Fixes the issue where the preview is zoomed but the final picture is not. + ## 0.7.0+3 * Fixes crash with using inner camera on some Android devices. diff --git a/packages/camera/camera/pubspec.yaml b/packages/camera/camera/pubspec.yaml index cebbb334c8f2..5ac4b57a15ef 100644 --- a/packages/camera/camera/pubspec.yaml +++ b/packages/camera/camera/pubspec.yaml @@ -2,7 +2,7 @@ name: camera description: A Flutter plugin for getting information about and controlling the camera on Android and iOS. Supports previewing the camera feed, capturing images, capturing video, and streaming image buffers to dart. -version: 0.7.0+3 +version: 0.7.0+4 homepage: https://github.com/flutter/plugins/tree/master/packages/camera/camera dependencies: From 5a37eabaaedd723971958d205c09d17b2d5e03d4 Mon Sep 17 00:00:00 2001 From: Maurits van Beusekom Date: Thu, 14 Jan 2021 13:44:29 +0100 Subject: [PATCH 3/3] Fix formatting --- .../src/main/java/io/flutter/plugins/camera/Camera.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/camera/camera/android/src/main/java/io/flutter/plugins/camera/Camera.java b/packages/camera/camera/android/src/main/java/io/flutter/plugins/camera/Camera.java index 18f5e1a14e30..1b6cce95d08c 100644 --- a/packages/camera/camera/android/src/main/java/io/flutter/plugins/camera/Camera.java +++ b/packages/camera/camera/android/src/main/java/io/flutter/plugins/camera/Camera.java @@ -543,7 +543,9 @@ private void runPictureCapture() { final CaptureRequest.Builder captureBuilder = cameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE); captureBuilder.addTarget(pictureImageReader.getSurface()); - captureBuilder.set(CaptureRequest.SCALER_CROP_REGION, captureRequestBuilder.get(CaptureRequest.SCALER_CROP_REGION)); + captureBuilder.set( + CaptureRequest.SCALER_CROP_REGION, + captureRequestBuilder.get(CaptureRequest.SCALER_CROP_REGION)); captureBuilder.set( CaptureRequest.JPEG_ORIENTATION, lockedCaptureOrientation == null