diff --git a/FacebookImagePicker.podspec b/FacebookImagePicker.podspec index 9ab8098..1ce5eb0 100644 --- a/FacebookImagePicker.podspec +++ b/FacebookImagePicker.podspec @@ -14,6 +14,6 @@ Pod::Spec.new do |s| } s.source_files = ['FacebookImagePicker/OL*.{h,m}', 'FacebookImagePicker/UIImageView+FacebookFadeIn.{h,m}'] s.resources = ['FacebookImagePicker/FacebookImagePicker.xcassets', 'FacebookImagePicker/*.xib'] - s.dependency 'FBSDKCoreKit', '~> 4.13.1' - s.dependency 'FBSDKLoginKit', '~> 4.13.1' + s.dependency 'FBSDKCoreKit' + s.dependency 'FBSDKLoginKit' end diff --git a/FacebookImagePicker/OLAlbumViewController.h b/FacebookImagePicker/OLAlbumViewController.h index b53a9b6..619c0c5 100644 --- a/FacebookImagePicker/OLAlbumViewController.h +++ b/FacebookImagePicker/OLAlbumViewController.h @@ -14,6 +14,7 @@ @protocol OLAlbumViewControllerDelegate - (void)albumViewControllerDoneClicked:(OLAlbumViewController *)albumController; - (void)albumViewController:(OLAlbumViewController *)albumController didFailWithError:(NSError *)error; +- (void)albumViewControllerCancelClicked:(OLAlbumViewController *)albumController; @optional - (void)albumViewController:(OLAlbumViewController *)albumController didSelectImage:(OLFacebookImage *)image; - (BOOL)albumViewController:(OLAlbumViewController *)albumController shouldSelectImage:(OLFacebookImage *)image; diff --git a/FacebookImagePicker/OLAlbumViewController.m b/FacebookImagePicker/OLAlbumViewController.m index 7f7f4ca..27fb4f0 100644 --- a/FacebookImagePicker/OLAlbumViewController.m +++ b/FacebookImagePicker/OLAlbumViewController.m @@ -96,6 +96,8 @@ - (void)viewDidLoad { if (self.shouldDisplayLogoutButton) { [self addLogoutButtonAnimated:NO]; + } else { + self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(cancelButtonClicked)]; } self.albumRequestForNextPage = [[OLFacebookAlbumRequest alloc] init]; @@ -199,9 +201,19 @@ - (void)onButtonLogoutClicked { [self.delegate albumViewControllerDoneClicked:self]; } +- (void)cancelButtonClicked{ + [self.delegate albumViewControllerCancelClicked:self]; +} + - (void)viewWillAppear:(BOOL)animated { [super viewWillAppear:animated]; - [self updateSelectedFromPhotoViewController]; + if (self.isMultiselectEnabled) { + // only remember selected photos from other album if enable multiple selection mode + [self updateSelectedFromPhotoViewController]; + } else { + self.selected = nil; + } + } #pragma mark - UITableViewDataSource methods @@ -263,9 +275,6 @@ - (void)photoViewController:(OLPhotoViewController *)photoController didFailWith } - (void)photoViewController:(OLPhotoViewController *)photoController didSelectImage:(OLFacebookImage *)image{ - if(self.isMultiselectEnabled) { - [self updateSelectedFromPhotoViewController]; - } if ([self.delegate respondsToSelector:@selector(albumViewController:didSelectImage:)]){ [self.delegate albumViewController:self didSelectImage:image]; @@ -273,7 +282,7 @@ - (void)photoViewController:(OLPhotoViewController *)photoController didSelectIm } - (void)photoViewController:(OLPhotoViewController *)photoController didDeSelectImage:(OLFacebookImage *)image{ - [self updateSelectedFromPhotoViewController]; + //[self updateSelectedFromPhotoViewController]; } - (BOOL)photoViewController:(OLPhotoViewController *)photoController shouldSelectImage:(OLFacebookImage *)image{ diff --git a/FacebookImagePicker/OLFacebookImagePickerController.m b/FacebookImagePicker/OLFacebookImagePickerController.m index ffea17d..4061485 100644 --- a/FacebookImagePicker/OLFacebookImagePickerController.m +++ b/FacebookImagePicker/OLFacebookImagePickerController.m @@ -23,7 +23,6 @@ @implementation OLFacebookImagePickerController - (id)init { UIViewController *vc = [[UIViewController alloc] init]; vc.view.backgroundColor = [UIColor whiteColor]; - vc.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(cancelButtonClicked)]; if (self = [super initWithRootViewController:vc]) { _shouldDisplayLogoutButton = YES; _isMultiselectEnabled = YES; @@ -35,10 +34,6 @@ - (id)init { return self; } -- (void)cancelButtonClicked{ - [self.delegate facebookImagePicker:self didFinishPickingImages:@[]]; -} - - (void)viewDidAppear:(BOOL)animated{ if (![FBSDKAccessToken currentAccessToken] && !self.haveSeenViewDidAppear){ self.haveSeenViewDidAppear = YES; @@ -100,6 +95,10 @@ - (void)albumViewControllerDoneClicked:(OLAlbumViewController *)albumController [self.delegate facebookImagePicker:self didFinishPickingImages:albumController.selected]; } +- (void)albumViewControllerCancelClicked:(OLAlbumViewController *)albumController { + [self.delegate facebookImagePickerDidCancelPickingImages:self]; +} + - (void)albumViewController:(OLAlbumViewController *)albumController didFailWithError:(NSError *)error { [self.delegate facebookImagePicker:self didFailWithError:error]; } diff --git a/FacebookImagePicker/OLPhotoViewController.m b/FacebookImagePicker/OLPhotoViewController.m index 7ec14ef..3fb84c2 100644 --- a/FacebookImagePicker/OLPhotoViewController.m +++ b/FacebookImagePicker/OLPhotoViewController.m @@ -210,13 +210,6 @@ -(void) collectionView:(UICollectionView *)collectionView didDeselectItemAtIndex } -(void) collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{ - if(self.isMultiselectEnabled) { - [self updateTitleWithSelectedIndexPaths:collectionView.indexPathsForSelectedItems]; - - } else { - [collectionView deselectItemAtIndexPath:indexPath animated:NO]; - } - if ([self.delegate respondsToSelector:@selector(photoViewController:didSelectImage:)]){ [self.delegate photoViewController:self didSelectImage:[self.photos objectAtIndex:indexPath.item]]; } diff --git a/FacebookImagePicker/Podfile b/FacebookImagePicker/Podfile index f80d8e9..dfe83f8 100644 --- a/FacebookImagePicker/Podfile +++ b/FacebookImagePicker/Podfile @@ -1,2 +1,4 @@ -pod 'FBSDKCoreKit', '~> 4.8.0' -pod 'FBSDKLoginKit', '~> 4.8.0' +target 'FacebookImagePicker' do + pod 'FBSDKCoreKit', '~> 4.13.1' + pod 'FBSDKLoginKit', '~> 4.13.1' +end \ No newline at end of file