[image_picker] Fix rotation when camera is a source (#4019)
* Fix isMetadataAvailable bool
* Add unit test
* Update CHANGELOG and version
diff --git a/packages/image_picker/image_picker/CHANGELOG.md b/packages/image_picker/image_picker/CHANGELOG.md
index 703b00b..e83ab72 100644
--- a/packages/image_picker/image_picker/CHANGELOG.md
+++ b/packages/image_picker/image_picker/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 0.8.0+2
+
+* Fix a rotation problem where when camera is chosen as a source and additional parameters are added.
+
## 0.8.0+1
* Removed redundant request for camera permissions.
diff --git a/packages/image_picker/image_picker/example/ios/RunnerTests/ImageUtilTests.m b/packages/image_picker/image_picker/example/ios/RunnerTests/ImageUtilTests.m
index 54a691d..b793d6e 100644
--- a/packages/image_picker/image_picker/example/ios/RunnerTests/ImageUtilTests.m
+++ b/packages/image_picker/image_picker/example/ios/RunnerTests/ImageUtilTests.m
@@ -34,6 +34,16 @@
XCTAssertEqual(newImage.size.height, 2);
}
+- (void)testScaledImage_ShouldBeCorrectRotation {
+ UIImage *image = [UIImage imageWithData:ImagePickerTestImages.JPGTestData];
+ UIImage *newImage = [FLTImagePickerImageUtil scaledImage:image
+ maxWidth:@3
+ maxHeight:@2
+ isMetadataAvailable:YES];
+
+ XCTAssertEqual(newImage.imageOrientation, UIImageOrientationUp);
+}
+
- (void)testScaledGIFImage_ShouldBeScaled {
// gif image that frame size is 3 and the duration is 1 second.
GIFInfo *info = [FLTImagePickerImageUtil scaledGIFImage:ImagePickerTestImages.GIFTestData
diff --git a/packages/image_picker/image_picker/ios/Classes/FLTImagePickerPlugin.m b/packages/image_picker/image_picker/ios/Classes/FLTImagePickerPlugin.m
index c4ea34a..e3df641 100644
--- a/packages/image_picker/image_picker/ios/Classes/FLTImagePickerPlugin.m
+++ b/packages/image_picker/image_picker/ios/Classes/FLTImagePickerPlugin.m
@@ -460,7 +460,7 @@
image = [FLTImagePickerImageUtil scaledImage:image
maxWidth:maxWidth
maxHeight:maxHeight
- isMetadataAvailable:originalAsset != nil];
+ isMetadataAvailable:YES];
}
if (!originalAsset) {
diff --git a/packages/image_picker/image_picker/pubspec.yaml b/packages/image_picker/image_picker/pubspec.yaml
index c24fdd0..4ca29b4 100755
--- a/packages/image_picker/image_picker/pubspec.yaml
+++ b/packages/image_picker/image_picker/pubspec.yaml
@@ -3,7 +3,7 @@
library, and taking new pictures with the camera.
repository: https://github.com/flutter/plugins/tree/master/packages/image_picker/image_picker
issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+image_picker%22
-version: 0.8.0+1
+version: 0.8.0+2
environment:
sdk: ">=2.12.0 <3.0.0"