From de1ba82420364b2a5f1474101711de54a53c83d6 Mon Sep 17 00:00:00 2001 From: Johan du Toit Date: Tue, 21 Sep 2021 16:44:05 +0100 Subject: [PATCH] =?UTF-8?q?fix(video):=20=F0=9F=90=9B=20apply=20quality=20?= =?UTF-8?q?to=20both=20recordings=20and=20image=20picking=20(#1776)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- example/ios/Podfile.lock | 4 ++-- ios/ImagePickerUtils.m | 34 +++++++++++++++++----------------- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock index 2ca37eedf..8ebd28382 100644 --- a/example/ios/Podfile.lock +++ b/example/ios/Podfile.lock @@ -185,7 +185,7 @@ PODS: - React-cxxreact (= 0.63.2) - React-jsi (= 0.63.2) - React-jsinspector (0.63.2) - - react-native-image-picker (4.0.3): + - react-native-image-picker (4.0.6): - React-Core - React-RCTActionSheet (0.63.2): - React-Core/RCTActionSheetHeaders (= 0.63.2) @@ -357,7 +357,7 @@ SPEC CHECKSUMS: React-jsi: 54245e1d5f4b690dec614a73a3795964eeef13a8 React-jsiexecutor: 8ca588cc921e70590820ce72b8789b02c67cce38 React-jsinspector: b14e62ebe7a66e9231e9581279909f2fc3db6606 - react-native-image-picker: 474cf2c33c2b6671da53d293a16c97995f0aec15 + react-native-image-picker: a6e56460d34905c849ada551db30897dc7f3d535 React-RCTActionSheet: 910163b6b09685a35c4ebbc52b66d1bfbbe39fc5 React-RCTAnimation: 9a883bbe1e9d2e158d4fb53765ed64c8dc2200c6 React-RCTBlob: 39cf0ece1927996c4466510e25d2105f67010e13 diff --git a/ios/ImagePickerUtils.m b/ios/ImagePickerUtils.m index 9b353ac00..0823a30a3 100644 --- a/ios/ImagePickerUtils.m +++ b/ios/ImagePickerUtils.m @@ -6,31 +6,31 @@ @implementation ImagePickerUtils + (void) setupPickerFromOptions:(UIImagePickerController *)picker options:(NSDictionary *)options target:(RNImagePickerTarget)target { + if ([[options objectForKey:@"mediaType"] isEqualToString:@"video"]) { + + if ([[options objectForKey:@"videoQuality"] isEqualToString:@"high"]) { + picker.videoQuality = UIImagePickerControllerQualityTypeHigh; + } + else if ([[options objectForKey:@"videoQuality"] isEqualToString:@"low"]) { + picker.videoQuality = UIImagePickerControllerQualityTypeLow; + } + else { + picker.videoQuality = UIImagePickerControllerQualityTypeMedium; + } + } + if (target == camera) { picker.sourceType = UIImagePickerControllerSourceTypeCamera; + if (options[@"durationLimit"] > 0) { + picker.videoMaximumDuration = [options[@"durationLimit"] doubleValue]; + } + if ([options[@"cameraType"] isEqualToString:@"front"]) { picker.cameraDevice = UIImagePickerControllerCameraDeviceFront; } else { picker.cameraDevice = UIImagePickerControllerCameraDeviceRear; } - - if ([[options objectForKey:@"mediaType"] isEqualToString:@"video"]) { - - if ([[options objectForKey:@"videoQuality"] isEqualToString:@"high"]) { - picker.videoQuality = UIImagePickerControllerQualityTypeHigh; - } - else if ([[options objectForKey:@"videoQuality"] isEqualToString:@"low"]) { - picker.videoQuality = UIImagePickerControllerQualityTypeLow; - } - else { - picker.videoQuality = UIImagePickerControllerQualityTypeMedium; - } - - if (options[@"durationLimit"] > 0) { - picker.videoMaximumDuration = [options[@"durationLimit"] doubleValue]; - } - } } else { picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary; }