diff --git a/BlocksKit.xcodeproj/project.pbxproj b/BlocksKit.xcodeproj/project.pbxproj index c82100d06..fa11e3109 100644 --- a/BlocksKit.xcodeproj/project.pbxproj +++ b/BlocksKit.xcodeproj/project.pbxproj @@ -7,9 +7,6 @@ objects = { /* Begin PBXBuildFile section */ - 2BB8A49518BE7740006AF0F6 /* UIImagePickerControllerBlocksKitTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 2BB8A49418BE7740006AF0F6 /* UIImagePickerControllerBlocksKitTest.m */; }; - 2BB8A49C18BE7927006AF0F6 /* UIImagePickerController+BlocksKit.m in Sources */ = {isa = PBXBuildFile; fileRef = 2BB8A49B18BE7927006AF0F6 /* UIImagePickerController+BlocksKit.m */; }; - 2BB8A4A218BEF584006AF0F6 /* UIImagePickerController+BlocksKit.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 2BB8A49A18BE7927006AF0F6 /* UIImagePickerController+BlocksKit.h */; }; 43CE09E1198660EE00F91137 /* QLPreviewController+BlocksKit.m in Sources */ = {isa = PBXBuildFile; fileRef = 43CE09E0198660EE00F91137 /* QLPreviewController+BlocksKit.m */; }; 43CE09E419866C2300F91137 /* QLPreviewControllerBlocksKitTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 43CE09E319866C2300F91137 /* QLPreviewControllerBlocksKitTest.m */; }; 43CE09E519866CC200F91137 /* BlocksKit+QuickLook.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 43CE09E21986618700F91137 /* BlocksKit+QuickLook.h */; }; @@ -242,7 +239,6 @@ files = ( 43CE09E919866D8400F91137 /* QLPreviewController+BlocksKit.h in CopyFiles */, 43CE09E519866CC200F91137 /* BlocksKit+QuickLook.h in CopyFiles */, - 2BB8A4A218BEF584006AF0F6 /* UIImagePickerController+BlocksKit.h in CopyFiles */, DBFB0A39184DC83C00F37EEE /* UIActionSheet+BlocksKit.h in CopyFiles */, DBFB0A3A184DC83C00F37EEE /* UIAlertView+BlocksKit.h in CopyFiles */, DBFB0A3B184DC83C00F37EEE /* UIBarButtonItem+BlocksKit.h in CopyFiles */, @@ -296,9 +292,6 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ - 2BB8A49418BE7740006AF0F6 /* UIImagePickerControllerBlocksKitTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UIImagePickerControllerBlocksKitTest.m; sourceTree = ""; }; - 2BB8A49A18BE7927006AF0F6 /* UIImagePickerController+BlocksKit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIImagePickerController+BlocksKit.h"; sourceTree = ""; }; - 2BB8A49B18BE7927006AF0F6 /* UIImagePickerController+BlocksKit.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIImagePickerController+BlocksKit.m"; sourceTree = ""; }; 43CE09DF198660EE00F91137 /* QLPreviewController+BlocksKit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "QLPreviewController+BlocksKit.h"; sourceTree = ""; }; 43CE09E0198660EE00F91137 /* QLPreviewController+BlocksKit.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "QLPreviewController+BlocksKit.m"; sourceTree = ""; }; 43CE09E21986618700F91137 /* BlocksKit+QuickLook.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "BlocksKit+QuickLook.h"; sourceTree = ""; }; @@ -772,8 +765,6 @@ DBFB0A2D184DC83200F37EEE /* UIView+BlocksKit.m */, DBFB0A2E184DC83200F37EEE /* UIWebView+BlocksKit.h */, DBFB0A2F184DC83200F37EEE /* UIWebView+BlocksKit.m */, - 2BB8A49A18BE7927006AF0F6 /* UIImagePickerController+BlocksKit.h */, - 2BB8A49B18BE7927006AF0F6 /* UIImagePickerController+BlocksKit.m */, ); path = UIKit; sourceTree = ""; @@ -798,7 +789,6 @@ DBFB0AF9184DCD6200F37EEE /* UIControlBlocksKitTest.m */, DBFB0AFB184DCD6200F37EEE /* UITextFieldBlocksKitTest.m */, DBFB0AFD184DCD6200F37EEE /* UIWebViewBlocksKitTest.m */, - 2BB8A49418BE7740006AF0F6 /* UIImagePickerControllerBlocksKitTest.m */, 43CE09E319866C2300F91137 /* QLPreviewControllerBlocksKitTest.m */, ); name = UIKit; @@ -1079,7 +1069,6 @@ DBFB0A33184DC83200F37EEE /* UIControl+BlocksKit.m in Sources */, DBFB09B7184DC7B000F37EEE /* NSInvocation+BlocksKit.m in Sources */, DBFB0A32184DC83200F37EEE /* UIBarButtonItem+BlocksKit.m in Sources */, - 2BB8A49C18BE7927006AF0F6 /* UIImagePickerController+BlocksKit.m in Sources */, DBFB09FC184DC7E400F37EEE /* A2BlockInvocation.m in Sources */, DBFB09D2184DC7B000F37EEE /* NSOrderedSet+BlocksKit.m in Sources */, DBFB0A19184DC82100F37EEE /* MFMailComposeViewController+BlocksKit.m in Sources */, @@ -1101,7 +1090,6 @@ DBFB0B0C184DCD6200F37EEE /* NSMutableIndexSetBlocksKitTest.m in Sources */, DBFB0B10184DCD6200F37EEE /* NSObjectBlockObservationTest.m in Sources */, DBFB0B02184DCD6200F37EEE /* BKMacrosTest.m in Sources */, - 2BB8A49518BE7740006AF0F6 /* UIImagePickerControllerBlocksKitTest.m in Sources */, DBFB0AFF184DCD6200F37EEE /* A2BlockInvocationTests.m in Sources */, DBFB0B19184DCD6200F37EEE /* UITextFieldBlocksKitTest.m in Sources */, DBFB0B0A184DCD6200F37EEE /* NSMutableArrayBlocksKitTest.m in Sources */, diff --git a/BlocksKit/BlocksKit+UIKit.h b/BlocksKit/BlocksKit+UIKit.h index 0b1951397..928cc2df5 100644 --- a/BlocksKit/BlocksKit+UIKit.h +++ b/BlocksKit/BlocksKit+UIKit.h @@ -35,4 +35,3 @@ #import #import #import -#import diff --git a/BlocksKit/UIKit/UIImagePickerController+BlocksKit.h b/BlocksKit/UIKit/UIImagePickerController+BlocksKit.h deleted file mode 100644 index 2a064867a..000000000 --- a/BlocksKit/UIKit/UIImagePickerController+BlocksKit.h +++ /dev/null @@ -1,30 +0,0 @@ -// -// UIImagePickerController+BlocksKit.h -// BlocksKit -// -// Contributed by Yas Kuraishi. -// - -#import - -/** UIImagePickerController with block callback. - - Created by [Yas Kuraishi](https://github.com/YasKuraishi) and contributed to - BlocksKit. - - @warning UIImagePickerController is only available on a platform with - UIKit. -*/ -@interface UIImagePickerController (BlocksKit) - -/** - * The block that fires after the receiver finished picking up an image - */ -@property (nonatomic, copy) void(^bk_didFinishPickingMediaBlock)(UIImagePickerController *, NSDictionary *); - -/** - * The block that fires after the user cancels out of picker - */ -@property (nonatomic, copy) void(^bk_didCancelBlock)(UIImagePickerController *); - -@end diff --git a/BlocksKit/UIKit/UIImagePickerController+BlocksKit.m b/BlocksKit/UIKit/UIImagePickerController+BlocksKit.m deleted file mode 100644 index 476ffc65b..000000000 --- a/BlocksKit/UIKit/UIImagePickerController+BlocksKit.m +++ /dev/null @@ -1,54 +0,0 @@ -// -// UIImagePickerController+BlocksKit.m -// BlocksKit -// - -#import "A2DynamicDelegate.h" -#import "NSObject+A2BlockDelegate.h" -#import "UIImagePickerController+BlocksKit.h" - -#pragma mark Custom delegate - -@interface A2DynamicUIImagePickerControllerDelegate : A2DynamicDelegate - -@end - -@implementation A2DynamicUIImagePickerControllerDelegate - -- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { - id realDelegate = self.realDelegate; - if (realDelegate && [realDelegate respondsToSelector:@selector(imagePickerController:didFinishPickingMediaWithInfo:)]) - [realDelegate imagePickerController:picker didFinishPickingMediaWithInfo:info]; - - void (^block)(UIImagePickerController *, NSDictionary *) = [self blockImplementationForMethod:_cmd]; - if (block) block(picker, info); -} - -- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker { - id realDelegate = self.realDelegate; - if (realDelegate && [realDelegate respondsToSelector:@selector(imagePickerControllerDidCancel:)]) - [realDelegate imagePickerControllerDidCancel:picker]; - - void (^block)(UIImagePickerController *) = [self blockImplementationForMethod:_cmd]; - if (block) block(picker); -} - -@end - -#pragma mark Category - -@implementation UIImagePickerController (BlocksKit) - -@dynamic bk_didFinishPickingMediaBlock; -@dynamic bk_didCancelBlock; - -+ (void)load -{ - @autoreleasepool { - [self bk_registerDynamicDelegate]; - [self bk_linkDelegateMethods:@{ @"bk_didFinishPickingMediaBlock": @"imagePickerController:didFinishPickingMediaWithInfo:", - @"bk_didCancelBlock": @"imagePickerControllerDidCancel:" }]; - } -} - -@end diff --git a/Tests/Images.xcassets/AppIcon.appiconset/Contents.json b/Tests/Images.xcassets/AppIcon.appiconset/Contents.json index a396706db..118c98f74 100644 --- a/Tests/Images.xcassets/AppIcon.appiconset/Contents.json +++ b/Tests/Images.xcassets/AppIcon.appiconset/Contents.json @@ -5,15 +5,30 @@ "size" : "29x29", "scale" : "2x" }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, { "idiom" : "iphone", "size" : "40x40", "scale" : "2x" }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, { "idiom" : "iphone", "size" : "60x60", "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x" } ], "info" : { diff --git a/Tests/UIImagePickerControllerBlocksKitTest.m b/Tests/UIImagePickerControllerBlocksKitTest.m deleted file mode 100644 index 148529e19..000000000 --- a/Tests/UIImagePickerControllerBlocksKitTest.m +++ /dev/null @@ -1,64 +0,0 @@ -// -// UIImagePickerControllerBlocksKitTest.m -// BlocksKit Unit Tests -// - -#import -#import -#import -#import -#import - -@interface UIImagePickerControllerBlocksKitTest : XCTestCase - -- (void)testDidFinishPickingMediaBlock; -- (void)testDidCancelBlock; - -@end - -@implementation UIImagePickerControllerBlocksKitTest { - UIImagePickerController *_subject; - BOOL delegateWorked; -} - -- (void)setUp { - _subject = [UIImagePickerController new]; -} - -- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info { - delegateWorked = YES; -} - -- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker { - delegateWorked = YES; -} - -- (void)testDidFinishPickingMediaBlock { - delegateWorked = NO; - __block BOOL blockWorked = NO; - - _subject.delegate = self; - _subject.bk_didFinishPickingMediaBlock = ^(UIImagePickerController *picker, NSDictionary *info) { - blockWorked = YES; - }; - - [[_subject bk_dynamicDelegateForProtocol:@protocol(UIImagePickerControllerDelegate)] imagePickerController:_subject didFinishPickingMediaWithInfo:nil]; - XCTAssertTrue(delegateWorked, @"Delegate method 'imagePickerController:didFinishPickingMediaWithInfo:' not called."); - XCTAssertTrue(blockWorked, @"Block handler 'bk_didFinishPickingMediaBlock' not called."); -} - -- (void)testDidCancelBlock { - delegateWorked = NO; - __block BOOL blockWorked = NO; - - _subject.delegate = self; - _subject.bk_didCancelBlock = ^(UIImagePickerController *picker) { - blockWorked = YES; - }; - - [[_subject bk_dynamicDelegateForProtocol:@protocol(UIImagePickerControllerDelegate)] imagePickerControllerDidCancel:_subject]; - XCTAssertTrue(delegateWorked, @"Delegate method 'imagePickerControllerDidCancel:' not called."); - XCTAssertTrue(blockWorked, @"Block handler 'bk_didCancelBlock' not called."); -} - -@end