From 3c7df27ed1d18948d53264a0d6cbb450ccd8c179 Mon Sep 17 00:00:00 2001 From: Sergio Estevao Date: Sat, 8 Feb 2020 09:40:50 +0000 Subject: [PATCH 01/18] Implement delegate method to allow library users to handle errors. --- Example/WPMediaPicker/DemoViewController.m | 4 ++++ Pod/Classes/WPMediaGroupPickerViewController.h | 9 +++++++++ Pod/Classes/WPMediaGroupPickerViewController.m | 5 +++++ Pod/Classes/WPMediaPickerViewController.h | 11 ++++++++++- Pod/Classes/WPMediaPickerViewController.m | 5 +++++ .../WPNavigationMediaPickerViewController.m | 16 ++++++++++++++++ 6 files changed, 49 insertions(+), 1 deletion(-) diff --git a/Example/WPMediaPicker/DemoViewController.m b/Example/WPMediaPicker/DemoViewController.m index ea957f7a..a1f0cf66 100644 --- a/Example/WPMediaPicker/DemoViewController.m +++ b/Example/WPMediaPicker/DemoViewController.m @@ -240,6 +240,10 @@ - (void)mediaPickerController:(WPMediaPickerViewController *)picker willShowOver } } +- (BOOL)mediaPickerController:(nonnull WPMediaPickerViewController *)picker handleError:(nonnull NSError *)error { + return error.domain != WPMediaPickerErrorDomain; +} + #pragma - Actions - (void) clearSelection:(id) sender diff --git a/Pod/Classes/WPMediaGroupPickerViewController.h b/Pod/Classes/WPMediaGroupPickerViewController.h index f8b32639..85024b07 100644 --- a/Pod/Classes/WPMediaGroupPickerViewController.h +++ b/Pod/Classes/WPMediaGroupPickerViewController.h @@ -42,4 +42,13 @@ */ - (void)mediaGroupPickerViewControllerDidCancel:(WPMediaGroupPickerViewController *)picker; +/** Asks the delegate to handle an error found by the picker + * If the method is not implemented or it returns NO the media picker will default to showing an alert with the an generic error message + * + * @param picker The controller object managing the assets picker interface. + * @param error The error to show + * @return YES if the error was handled by the delegate + */ +- (BOOL)mediaGroupPickerViewController:(WPMediaGroupPickerViewController *)picker handleError:(NSError *)error; + @end diff --git a/Pod/Classes/WPMediaGroupPickerViewController.m b/Pod/Classes/WPMediaGroupPickerViewController.m index 503359b0..5f7da388 100644 --- a/Pod/Classes/WPMediaGroupPickerViewController.m +++ b/Pod/Classes/WPMediaGroupPickerViewController.m @@ -84,6 +84,11 @@ - (void)loadData - (void)showError:(NSError *)error { [self.refreshControl endRefreshing]; [self.tableView reloadData]; + if ([self.delegate respondsToSelector:@selector(mediaGroupPickerViewController:handleError:)]) { + if ([self.delegate mediaGroupPickerViewController:self handleError:error]) { + return; + } + } [self wpm_showAlertWithError:error okActionHandler:^(UIAlertAction * _Nonnull action) { if ([self.delegate respondsToSelector:@selector(mediaGroupPickerViewControllerDidCancel:)]) { [self.delegate mediaGroupPickerViewControllerDidCancel:self]; diff --git a/Pod/Classes/WPMediaPickerViewController.h b/Pod/Classes/WPMediaPickerViewController.h index 2898b237..a391e6c7 100644 --- a/Pod/Classes/WPMediaPickerViewController.h +++ b/Pod/Classes/WPMediaPickerViewController.h @@ -199,7 +199,7 @@ - (nullable UIView *)emptyViewForMediaPickerController:(nonnull WPMediaPickerViewController *)picker; /** - * Asks the delegate for an empty view to show when there are no assets + * Asks the delegate for an empty view controller to show when there are no assets * to be displayed. If no empty view is required, you have to implement this * method and return `nil`. * @@ -211,6 +211,15 @@ */ - (nullable UIViewController *)emptyViewControllerForMediaPickerController:(nonnull WPMediaPickerViewController *)picker; +/** Asks the delegate to handle an error found by the picker + * If the method is not implemented or it returns NO the media picker will default to showing an alert with the an generic error message + * + * @param picker The controller object managing the assets picker interface. + * @param error The error to show + * @return YES if the error was handled by the delegate + */ +- (BOOL)mediaPickerController:(nonnull WPMediaPickerViewController *)picker handleError:(nonnull NSError *)error; + @end diff --git a/Pod/Classes/WPMediaPickerViewController.m b/Pod/Classes/WPMediaPickerViewController.m index 1734144e..8fbfe4b3 100644 --- a/Pod/Classes/WPMediaPickerViewController.m +++ b/Pod/Classes/WPMediaPickerViewController.m @@ -768,6 +768,11 @@ - (void)showError:(NSError *)error { self.collectionView.allowsSelection = YES; self.collectionView.scrollEnabled = YES; [self.collectionView reloadData]; + if ([self.mediaPickerDelegate respondsToSelector:@selector(mediaPickerController:handleError:)]) { + if ([self.mediaPickerDelegate mediaPickerController:self handleError:error]) { + return; + } + } [self wpm_showAlertWithError:error okActionHandler:^(UIAlertAction * _Nonnull action) { if ([self.mediaPickerDelegate respondsToSelector:@selector(mediaPickerControllerDidCancel:)]) { [self.mediaPickerDelegate mediaPickerControllerDidCancel:self]; diff --git a/Pod/Classes/WPNavigationMediaPickerViewController.m b/Pod/Classes/WPNavigationMediaPickerViewController.m index e92b1eb0..16978f5c 100644 --- a/Pod/Classes/WPNavigationMediaPickerViewController.m +++ b/Pod/Classes/WPNavigationMediaPickerViewController.m @@ -215,6 +215,14 @@ - (void)mediaGroupPickerViewControllerDidCancel:(WPMediaGroupPickerViewControlle } } +- (BOOL)mediaGroupPickerViewController:(WPMediaGroupPickerViewController *)picker handleError:(NSError *)error { + if ([self.delegate respondsToSelector:@selector(mediaPickerController:handleError:)]) { + return [self.delegate mediaPickerController:self.mediaPicker handleError:error]; + } else { + return NO; + } +} + #pragma mark - WPMediaPickerViewControllerDelegate - (void)mediaPickerController:(WPMediaPickerViewController *)picker didUpdateSearchWithAssetCount:(NSInteger)assetCount { @@ -342,6 +350,14 @@ - (void)mediaPickerController:(nonnull WPMediaPickerViewController *)picker sele [self updateSelectionAction]; } +- (BOOL)mediaPickerController:(nonnull WPMediaPickerViewController *)picker handleError:(nonnull NSError *)error { + if ([self.delegate respondsToSelector:@selector(mediaPickerController:handleError:)]) { + return [self.delegate mediaPickerController:picker handleError:error]; + } else { + return NO; + } +} + - (void)updateSelectionAction { if (self.mediaPicker.options.showActionBar || self.mediaPicker.selectedAssets.count == 0 || !self.mediaPicker.options.allowMultipleSelection) { self.internalNavigationController.topViewController.navigationItem.rightBarButtonItem = nil; From 16524009f06694213bd0d821a72c9b4a8e0f9c61 Mon Sep 17 00:00:00 2001 From: "Thuy.Copeland" Date: Tue, 10 Mar 2020 08:48:11 -0500 Subject: [PATCH 02/18] Update the example app's schema --- .../xcschemes/WPMediaPicker-Example.xcscheme | 24 ++++++++----------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/Example/WPMediaPicker.xcodeproj/xcshareddata/xcschemes/WPMediaPicker-Example.xcscheme b/Example/WPMediaPicker.xcodeproj/xcshareddata/xcschemes/WPMediaPicker-Example.xcscheme index 07901510..4d56bfa7 100644 --- a/Example/WPMediaPicker.xcodeproj/xcshareddata/xcschemes/WPMediaPicker-Example.xcscheme +++ b/Example/WPMediaPicker.xcodeproj/xcshareddata/xcschemes/WPMediaPicker-Example.xcscheme @@ -1,6 +1,6 @@ + + + + @@ -39,17 +48,6 @@ - - - - - - - - Date: Tue, 10 Mar 2020 08:48:48 -0500 Subject: [PATCH 03/18] Define the swift version as Swift 5 in the podspec --- WPMediaPicker.podspec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/WPMediaPicker.podspec b/WPMediaPicker.podspec index fc5804b3..d73b3c3a 100644 --- a/WPMediaPicker.podspec +++ b/WPMediaPicker.podspec @@ -16,7 +16,8 @@ Pod::Spec.new do |s| s.source = { :git => "https://github.com/wordpress-mobile/MediaPicker-iOS.git", :tag => s.version.to_s } s.platform = :ios, '11.0' - s.requires_arc = true + s.requires_arc = true + s.swift_version = '5.0' s.source_files = 'Pod/Classes' s.resource_bundles = { From ebf70349bd244a429545a5a5f8dbb376f41e5bef Mon Sep 17 00:00:00 2001 From: "Thuy.Copeland" Date: Tue, 10 Mar 2020 08:51:44 -0500 Subject: [PATCH 04/18] Update podfile.lock checksum --- Example/Podfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Example/Podfile.lock b/Example/Podfile.lock index 46a3efd8..7a6eb764 100644 --- a/Example/Podfile.lock +++ b/Example/Podfile.lock @@ -9,7 +9,7 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - WPMediaPicker: e5d28197da6b467d4e5975d64a49255977e39455 + WPMediaPicker: 0fc7bdffaeee70b1ac90372ac656a41af86b1877 PODFILE CHECKSUM: 6b0e391139d3864c72fde997a1418dbfe9bf5126 From ffe3f5854479011b6d3115dddd0f49ca049792af Mon Sep 17 00:00:00 2001 From: "Thuy.Copeland" Date: Tue, 10 Mar 2020 11:00:44 -0500 Subject: [PATCH 05/18] Update Changelog - remove typo in release 1.6.0 --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ab3e1e4b..a04cfbfa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ All notable changes to this project will be documented in this file. `WPMediaPicker` adheres to [Semantic Versioning](http://semver.org/). #### Releases -- `1.6.0` Release - [1.5](#1.6.0) +- `1.6.0` Release - [1.6](#1.6.0) - `1.5.0` Release - [1.5](#1.5.0) - `1.4.2` Release - [1.4](#1.4.2) - `1.4` Release - [1.4](#1.4) From 763e6d66376012b54d42e023bba7cd8f9a4f1ccf Mon Sep 17 00:00:00 2001 From: "Thuy.Copeland" Date: Tue, 10 Mar 2020 11:02:16 -0500 Subject: [PATCH 06/18] Update podspec version to 1.6.1-beta.1 --- WPMediaPicker.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WPMediaPicker.podspec b/WPMediaPicker.podspec index d73b3c3a..48c07812 100644 --- a/WPMediaPicker.podspec +++ b/WPMediaPicker.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = "WPMediaPicker" - s.version = "1.6.0" + s.version = "1.6.1-beta.1" s.summary = "WPMediaPicker is an iOS controller that allows capture and picking of media assets." s.description = <<-DESC WPMediaPicker is an iOS controller that allows capture and picking of media assets. From ba2dafd7705f9ffbafb99a251e153c096281b20f Mon Sep 17 00:00:00 2001 From: "Thuy.Copeland" Date: Tue, 10 Mar 2020 11:07:28 -0500 Subject: [PATCH 07/18] Fix another typo in the changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a04cfbfa..01ce71e7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ All notable changes to this project will be documented in this file. #### Releases - `1.6.0` Release - [1.6](#1.6.0) - `1.5.0` Release - [1.5](#1.5.0) -- `1.4.2` Release - [1.4](#1.4.2) +- `1.4.2` Release - [1.4.2](#1.4.2) - `1.4` Release - [1.4](#1.4) - `1.3.4` Release - [1.3.4](#1.3.4) - `1.3` Release - [1.3](#1.3) From 1595e94ea7dfcb69f24caacec7e7d3486e41daec Mon Sep 17 00:00:00 2001 From: Lorenzo Mattei Date: Wed, 11 Mar 2020 14:19:32 +0100 Subject: [PATCH 08/18] Add rbenv configuration --- .ruby-version | 1 + 1 file changed, 1 insertion(+) create mode 100644 .ruby-version diff --git a/.ruby-version b/.ruby-version new file mode 100644 index 00000000..e46a05b1 --- /dev/null +++ b/.ruby-version @@ -0,0 +1 @@ +2.6.4 \ No newline at end of file From f9096c5209d2acb0a5bbffd8170ce46267828dc5 Mon Sep 17 00:00:00 2001 From: Lorenzo Mattei Date: Wed, 11 Mar 2020 14:20:08 +0100 Subject: [PATCH 09/18] Don't use global CocoaPods --- .bundle/config | 2 ++ .gitignore | 3 --- 2 files changed, 2 insertions(+), 3 deletions(-) create mode 100644 .bundle/config diff --git a/.bundle/config b/.bundle/config new file mode 100644 index 00000000..23692288 --- /dev/null +++ b/.bundle/config @@ -0,0 +1,2 @@ +--- +BUNDLE_PATH: "vendor/bundle" diff --git a/.gitignore b/.gitignore index a7bf3a13..6996b13f 100644 --- a/.gitignore +++ b/.gitignore @@ -19,9 +19,6 @@ DerivedData *.hmap *.ipa -# Bundler -.bundle - # We recommend against adding the Pods directory to your .gitignore. However # you should judge for yourself, the pros and cons are mentioned at: # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control From 988fbbfaccc86b072ce36e4c248776eab874dac8 Mon Sep 17 00:00:00 2001 From: Lorenzo Mattei Date: Wed, 11 Mar 2020 14:20:22 +0100 Subject: [PATCH 10/18] Update XCode version --- .circleci/config.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 9f80a117..548b2320 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -9,22 +9,22 @@ workflows: jobs: - ios/test: name: Test - xcode-version: "11.0" + xcode-version: "11.2.1" cocoapods-working-directory: Example workspace: Example/WPMediaPicker.xcworkspace scheme: WPMediaPicker-Example device: iPhone 11 - ios-version: "13.0" + ios-version: "13.2.2" bundle-install: true pod-install: true - ios/validate-podspec: name: Validate Podspec - xcode-version: "11.0" + xcode-version: "11.2.1" podspec-path: WPMediaPicker.podspec bundle-install: true - ios/publish-podspec: name: Publish to Trunk - xcode-version: "11.0" + xcode-version: "11.2.1" podspec-path: WPMediaPicker.podspec bundle-install: true post-to-slack: true From 6b2061be5c8ef348cf6c0888c8821548a459d374 Mon Sep 17 00:00:00 2001 From: "Thuy.Copeland" Date: Wed, 11 Mar 2020 09:43:21 -0500 Subject: [PATCH 11/18] Update podfile.lock checksum --- Example/Podfile.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Example/Podfile.lock b/Example/Podfile.lock index 7a6eb764..466928b3 100644 --- a/Example/Podfile.lock +++ b/Example/Podfile.lock @@ -1,5 +1,5 @@ PODS: - - WPMediaPicker (1.6.0) + - WPMediaPicker (1.6.1-beta.1) DEPENDENCIES: - WPMediaPicker (from `../`) @@ -9,7 +9,7 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - WPMediaPicker: 0fc7bdffaeee70b1ac90372ac656a41af86b1877 + WPMediaPicker: 370b1c1597afc0dd3664c361748fdfd13530d4c6 PODFILE CHECKSUM: 6b0e391139d3864c72fde997a1418dbfe9bf5126 From 0088e4d9d5e8841c92fbc7b0109841ac78fe9b2f Mon Sep 17 00:00:00 2001 From: Stephenie Harris Date: Wed, 11 Mar 2020 14:15:51 -0600 Subject: [PATCH 12/18] Allow customizing action bar background color. --- Pod/Classes/WPActionBar.h | 5 +++++ Pod/Classes/WPActionBar.m | 10 ++++++++++ WPMediaPicker.podspec | 2 +- 3 files changed, 16 insertions(+), 1 deletion(-) diff --git a/Pod/Classes/WPActionBar.h b/Pod/Classes/WPActionBar.h index 718dabe8..20a7b14e 100644 --- a/Pod/Classes/WPActionBar.h +++ b/Pod/Classes/WPActionBar.h @@ -7,6 +7,11 @@ */ @property (nonatomic, strong) UIColor *lineColor UI_APPEARANCE_SELECTOR; +/** +The color for the action bar background. +*/ +@property (nonatomic, strong) UIColor *barBackgroundColor UI_APPEARANCE_SELECTOR; + /** Adds the given button to the left side of the bar diff --git a/Pod/Classes/WPActionBar.m b/Pod/Classes/WPActionBar.m index f64e777b..afc3dd83 100644 --- a/Pod/Classes/WPActionBar.m +++ b/Pod/Classes/WPActionBar.m @@ -83,6 +83,16 @@ - (UIStackView *)stackView #pragma mark - public methods +- (UIColor *)barBackgroundColor +{ + return self.backgroundColor; +} + +- (void)setBarBackgroundColor:(UIColor *)barBackgroundColor +{ + self.backgroundColor = barBackgroundColor; +} + - (UIColor *)lineColor { return self.lineView.backgroundColor; diff --git a/WPMediaPicker.podspec b/WPMediaPicker.podspec index fc5804b3..920af26d 100644 --- a/WPMediaPicker.podspec +++ b/WPMediaPicker.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = "WPMediaPicker" - s.version = "1.6.0" + s.version = "1.6.1-beta.1" s.summary = "WPMediaPicker is an iOS controller that allows capture and picking of media assets." s.description = <<-DESC WPMediaPicker is an iOS controller that allows capture and picking of media assets. From fa46352ca09dd3f82a49ad36dba122d192fa9a3b Mon Sep 17 00:00:00 2001 From: "Thuy.Copeland" Date: Wed, 11 Mar 2020 15:23:09 -0500 Subject: [PATCH 13/18] Remove podspec flag for arc. Podspecs use arc by default. --- WPMediaPicker.podspec | 1 - 1 file changed, 1 deletion(-) diff --git a/WPMediaPicker.podspec b/WPMediaPicker.podspec index 48c07812..3d1a3fbe 100644 --- a/WPMediaPicker.podspec +++ b/WPMediaPicker.podspec @@ -16,7 +16,6 @@ Pod::Spec.new do |s| s.source = { :git => "https://github.com/wordpress-mobile/MediaPicker-iOS.git", :tag => s.version.to_s } s.platform = :ios, '11.0' - s.requires_arc = true s.swift_version = '5.0' s.source_files = 'Pod/Classes' From 98b324afaddc60742eefd02bbc6f4700747c2fa6 Mon Sep 17 00:00:00 2001 From: "Thuy.Copeland" Date: Wed, 11 Mar 2020 15:23:37 -0500 Subject: [PATCH 14/18] Remove unidentified app icon, "long look" for watch --- .../Images.xcassets/AppIcon.appiconset/Contents.json | 7 ------- 1 file changed, 7 deletions(-) diff --git a/Example/WPMediaPicker/Images.xcassets/AppIcon.appiconset/Contents.json b/Example/WPMediaPicker/Images.xcassets/AppIcon.appiconset/Contents.json index fc2d2513..4095a5cb 100644 --- a/Example/WPMediaPicker/Images.xcassets/AppIcon.appiconset/Contents.json +++ b/Example/WPMediaPicker/Images.xcassets/AppIcon.appiconset/Contents.json @@ -207,13 +207,6 @@ "idiom" : "watch-marketing", "size" : "1024x1024", "scale" : "1x" - }, - { - "size" : "44x44", - "idiom" : "watch", - "scale" : "2x", - "role" : "longLook", - "subtype" : "42mm" } ], "info" : { From 02c9c70fb530ce119a9a303c68ddb59c3515a09a Mon Sep 17 00:00:00 2001 From: "Thuy.Copeland" Date: Wed, 11 Mar 2020 15:37:08 -0500 Subject: [PATCH 15/18] Delete the launch screen .xib file and use a launch screen storyboard --- .../WPMediaPicker.xcodeproj/project.pbxproj | 10 ++- .../LaunchImage.launchimage/Contents.json | 51 ---------------- .../WPMediaPicker/Launch Screen.storyboard | 61 +++++++++++++++++++ Example/WPMediaPicker/Launch Screen.xib | 57 ----------------- .../WPMediaPicker/WPMediaPicker-Info.plist | 12 ++-- 5 files changed, 71 insertions(+), 120 deletions(-) delete mode 100644 Example/WPMediaPicker/Images.xcassets/LaunchImage.launchimage/Contents.json create mode 100644 Example/WPMediaPicker/Launch Screen.storyboard delete mode 100644 Example/WPMediaPicker/Launch Screen.xib diff --git a/Example/WPMediaPicker.xcodeproj/project.pbxproj b/Example/WPMediaPicker.xcodeproj/project.pbxproj index f18210f6..8559bd3b 100644 --- a/Example/WPMediaPicker.xcodeproj/project.pbxproj +++ b/Example/WPMediaPicker.xcodeproj/project.pbxproj @@ -24,8 +24,8 @@ 702AD5F17F8916AABC105A1B /* libPods-WPMediaPicker.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 8C1CDA09FDF3F25E866D8A4D /* libPods-WPMediaPicker.a */; }; AE22BBE03B862A6657E6B66E /* libPods-Tests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6E1E578A5967DE531E1AC701 /* libPods-Tests.a */; }; B5FF3BEA1CAD8AB100C1D597 /* PostProcessingViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = B5FF3BE91CAD8AB100C1D597 /* PostProcessingViewController.m */; }; + CEDE0D8F2419808A00CB3345 /* Launch Screen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = CEDE0D8E2419808A00CB3345 /* Launch Screen.storyboard */; }; FF355D9E1FB5EB4A00244E6D /* WPPHAssetDataSource+Search.m in Sources */ = {isa = PBXBuildFile; fileRef = FF355D9D1FB5EB4A00244E6D /* WPPHAssetDataSource+Search.m */; }; - FFC3F6F31B0D9BB100EFC359 /* Launch Screen.xib in Resources */ = {isa = PBXBuildFile; fileRef = FFC3F6F21B0D9BB100EFC359 /* Launch Screen.xib */; }; FFE69A1D1B14AB840073C2EB /* OptionsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = FFE69A1C1B14AB840073C2EB /* OptionsViewController.m */; }; FFFFD8811A447E67000FC184 /* DemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = FFFFD8801A447E67000FC184 /* DemoViewController.m */; }; /* End PBXBuildFile section */ @@ -71,13 +71,13 @@ ABF10F16DB0AA9A8008C72C7 /* Pods-WPMediaPicker.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WPMediaPicker.debug.xcconfig"; path = "Pods/Target Support Files/Pods-WPMediaPicker/Pods-WPMediaPicker.debug.xcconfig"; sourceTree = ""; }; B5FF3BE81CAD8AB100C1D597 /* PostProcessingViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PostProcessingViewController.h; sourceTree = ""; }; B5FF3BE91CAD8AB100C1D597 /* PostProcessingViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PostProcessingViewController.m; sourceTree = ""; }; + CEDE0D8E2419808A00CB3345 /* Launch Screen.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = "Launch Screen.storyboard"; sourceTree = ""; }; CEF4FB57530C0C9D7C09607C /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; name = README.md; path = ../README.md; sourceTree = ""; }; F0D09511821A352B062D5699 /* WPMediaPicker.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = WPMediaPicker.podspec; path = ../WPMediaPicker.podspec; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; FF355D9C1FB5EB4A00244E6D /* WPPHAssetDataSource+Search.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "WPPHAssetDataSource+Search.h"; sourceTree = ""; }; FF355D9D1FB5EB4A00244E6D /* WPPHAssetDataSource+Search.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "WPPHAssetDataSource+Search.m"; sourceTree = ""; }; FF41CBE31E8B0F5B001B8235 /* CHANGELOG.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; name = CHANGELOG.md; path = ../CHANGELOG.md; sourceTree = ""; }; FF7DCB451E7C494D00AB77CB /* CONTRIBUTING.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; name = CONTRIBUTING.md; path = ../CONTRIBUTING.md; sourceTree = ""; }; - FFC3F6F21B0D9BB100EFC359 /* Launch Screen.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = "Launch Screen.xib"; sourceTree = ""; }; FFE69A1B1B14AB840073C2EB /* OptionsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OptionsViewController.h; sourceTree = ""; }; FFE69A1C1B14AB840073C2EB /* OptionsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OptionsViewController.m; sourceTree = ""; }; FFFFD87F1A447E67000FC184 /* DemoViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DemoViewController.h; sourceTree = ""; }; @@ -158,8 +158,8 @@ 6003F59C195388D20070C39A /* AppDelegate.h */, 6003F59D195388D20070C39A /* AppDelegate.m */, 6003F5A8195388D20070C39A /* Images.xcassets */, + CEDE0D8E2419808A00CB3345 /* Launch Screen.storyboard */, 6003F594195388D20070C39A /* Supporting Files */, - FFC3F6F21B0D9BB100EFC359 /* Launch Screen.xib */, FFE69A1B1B14AB840073C2EB /* OptionsViewController.h */, FFE69A1C1B14AB840073C2EB /* OptionsViewController.m */, FF355D9C1FB5EB4A00244E6D /* WPPHAssetDataSource+Search.h */, @@ -307,7 +307,7 @@ files = ( 6003F5A9195388D20070C39A /* Images.xcassets in Resources */, 6003F598195388D20070C39A /* InfoPlist.strings in Resources */, - FFC3F6F31B0D9BB100EFC359 /* Launch Screen.xib in Resources */, + CEDE0D8F2419808A00CB3345 /* Launch Screen.storyboard in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -538,7 +538,6 @@ baseConfigurationReference = ABF10F16DB0AA9A8008C72C7 /* Pods-WPMediaPicker.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES; CLANG_WARN_UNREACHABLE_CODE = YES; @@ -563,7 +562,6 @@ baseConfigurationReference = 1120051BDDDC8A558883872E /* Pods-WPMediaPicker.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES; CLANG_WARN_UNREACHABLE_CODE = YES; diff --git a/Example/WPMediaPicker/Images.xcassets/LaunchImage.launchimage/Contents.json b/Example/WPMediaPicker/Images.xcassets/LaunchImage.launchimage/Contents.json deleted file mode 100644 index 6da7c45a..00000000 --- a/Example/WPMediaPicker/Images.xcassets/LaunchImage.launchimage/Contents.json +++ /dev/null @@ -1,51 +0,0 @@ -{ - "images" : [ - { - "orientation" : "portrait", - "idiom" : "iphone", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "iphone", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "subtype" : "retina4", - "scale" : "2x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "1x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "1x" - }, - { - "orientation" : "portrait", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "2x" - }, - { - "orientation" : "landscape", - "idiom" : "ipad", - "extent" : "full-screen", - "minimum-system-version" : "7.0", - "scale" : "2x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/Example/WPMediaPicker/Launch Screen.storyboard b/Example/WPMediaPicker/Launch Screen.storyboard new file mode 100644 index 00000000..80b9680f --- /dev/null +++ b/Example/WPMediaPicker/Launch Screen.storyboard @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/WPMediaPicker/Launch Screen.xib b/Example/WPMediaPicker/Launch Screen.xib deleted file mode 100644 index 11d1d499..00000000 --- a/Example/WPMediaPicker/Launch Screen.xib +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Example/WPMediaPicker/WPMediaPicker-Info.plist b/Example/WPMediaPicker/WPMediaPicker-Info.plist index a4698d70..e2c7208d 100644 --- a/Example/WPMediaPicker/WPMediaPicker-Info.plist +++ b/Example/WPMediaPicker/WPMediaPicker-Info.plist @@ -24,6 +24,12 @@ 1.0 LSRequiresIPhoneOS + NSCameraUsageDescription + To take photos or videos to use in your posts. + NSMicrophoneUsageDescription + For your videos to have sound on them. + NSPhotoLibraryUsageDescription + In order to use photos from your library on posts. UILaunchStoryboardName Launch Screen UIRequiredDeviceCapabilities @@ -49,11 +55,5 @@ UIViewControllerBasedStatusBarAppearance - NSPhotoLibraryUsageDescription - In order to use photos from your library on posts. - NSMicrophoneUsageDescription - For your videos to have sound on them. - NSCameraUsageDescription - To take photos or videos to use in your posts. From f0b2adf8b6b81178b067bb52f25d7ccb7065b0d7 Mon Sep 17 00:00:00 2001 From: "Thuy.Copeland" Date: Thu, 12 Mar 2020 11:57:45 -0500 Subject: [PATCH 16/18] Add the app store icon to remove xcode warning --- .../AppIcon.appiconset/Contents.json | 6 ++++-- .../AppIcon.appiconset/Icon-App-1024x1024-1.png | Bin 0 -> 32457 bytes .../AppIcon.appiconset/Icon-App-1024x1024.png | Bin 0 -> 32457 bytes 3 files changed, 4 insertions(+), 2 deletions(-) create mode 100644 Example/WPMediaPicker/Images.xcassets/AppIcon.appiconset/Icon-App-1024x1024-1.png create mode 100644 Example/WPMediaPicker/Images.xcassets/AppIcon.appiconset/Icon-App-1024x1024.png diff --git a/Example/WPMediaPicker/Images.xcassets/AppIcon.appiconset/Contents.json b/Example/WPMediaPicker/Images.xcassets/AppIcon.appiconset/Contents.json index 4095a5cb..5028ebeb 100644 --- a/Example/WPMediaPicker/Images.xcassets/AppIcon.appiconset/Contents.json +++ b/Example/WPMediaPicker/Images.xcassets/AppIcon.appiconset/Contents.json @@ -131,8 +131,9 @@ "scale" : "2x" }, { - "idiom" : "ios-marketing", "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024-1.png", "scale" : "1x" }, { @@ -204,8 +205,9 @@ "subtype" : "44mm" }, { - "idiom" : "watch-marketing", "size" : "1024x1024", + "idiom" : "watch-marketing", + "filename" : "Icon-App-1024x1024.png", "scale" : "1x" } ], diff --git a/Example/WPMediaPicker/Images.xcassets/AppIcon.appiconset/Icon-App-1024x1024-1.png b/Example/WPMediaPicker/Images.xcassets/AppIcon.appiconset/Icon-App-1024x1024-1.png new file mode 100644 index 0000000000000000000000000000000000000000..900e0c9f26226bf6dcab61961bb8c6acd59c036b GIT binary patch literal 32457 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 Date: Thu, 12 Mar 2020 11:59:01 -0500 Subject: [PATCH 17/18] Update podspec to version 1.6.1-beta.2 (beta.1 is already taken) --- WPMediaPicker.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WPMediaPicker.podspec b/WPMediaPicker.podspec index 3d1a3fbe..6be7e4fa 100644 --- a/WPMediaPicker.podspec +++ b/WPMediaPicker.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = "WPMediaPicker" - s.version = "1.6.1-beta.1" + s.version = "1.6.1-beta.2" s.summary = "WPMediaPicker is an iOS controller that allows capture and picking of media assets." s.description = <<-DESC WPMediaPicker is an iOS controller that allows capture and picking of media assets. From d80eb59d7068149bcf4766e84fc7df2cc76da140 Mon Sep 17 00:00:00 2001 From: Lorenzo Mattei Date: Mon, 23 Mar 2020 10:48:12 +0100 Subject: [PATCH 18/18] Bump version for release --- WPMediaPicker.podspec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/WPMediaPicker.podspec b/WPMediaPicker.podspec index 6be7e4fa..198d7cb8 100644 --- a/WPMediaPicker.podspec +++ b/WPMediaPicker.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = "WPMediaPicker" - s.version = "1.6.1-beta.2" + s.version = "1.6.1" s.summary = "WPMediaPicker is an iOS controller that allows capture and picking of media assets." s.description = <<-DESC WPMediaPicker is an iOS controller that allows capture and picking of media assets.