Skip to content

Commit

Permalink
Converted to Objective-C ARC
Browse files Browse the repository at this point in the history
  • Loading branch information
ezwart committed Sep 25, 2013
1 parent 8ededa4 commit da914d9
Show file tree
Hide file tree
Showing 6 changed files with 43 additions and 62 deletions.
16 changes: 8 additions & 8 deletions FacebookLikeView/Classes/FacebookLikeView.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,30 +13,30 @@
@interface FacebookLikeView : UIView

// A delegate
@property (assign) IBOutlet id<FacebookLikeViewDelegate> delegate;
@property (unsafe_unretained) IBOutlet id<FacebookLikeViewDelegate> delegate;

// The URL to like. This and the following properties map directly to XFBML attributes
// described here: https://developers.facebook.com/docs/reference/plugins/like/
@property (retain) NSURL *href;
@property (strong, nonatomic) NSURL *href;

// The style of the Like button and like count. Options: 'standard', 'button_count', and 'box_count'.
// You are responsible for sizing your FacebookLikeView appropriately for the layout you choose.
@property (retain) NSString *layout;
@property (strong, nonatomic) NSString *layout;

// Specifies whether to display profile photos below the button ('standard' layout only)
@property (assign) BOOL showFaces;
@property (assign, nonatomic) BOOL showFaces;

// The verb to display on the button. Options: 'like', 'recommend'
@property (retain) NSString *action;
@property (strong, nonatomic) NSString *action;

// The font to display in the button. Options: 'arial', 'lucida grande', 'segoe ui', 'tahoma', 'trebuchet ms', 'verdana'
@property (retain) NSString *font;
@property (strong, nonatomic) NSString *font;

// The color scheme for the like button. Options: 'light', 'dark'
@property (retain) NSString *colorScheme;
@property (strong, nonatomic) NSString *colorScheme;

// A label for tracking referrals.
@property (retain) NSString *ref;
@property (strong, nonatomic) NSString *ref;

// Load/reload the content of the web view. You should call this after changing any of the above parameters,
// and whenever the user signs in or out of Facebook.
Expand Down
29 changes: 10 additions & 19 deletions FacebookLikeView/Classes/FacebookLikeView.m
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@

@interface FacebookLikeView () <UIWebViewDelegate>

@property (readonly) UIWebView *webView;
@property (strong, nonatomic) UIWebView *webView;

@end

@implementation NSData (UTF8String)

- (NSString*)UTF8String {
return [[[NSString alloc] initWithData:self encoding:NSUTF8StringEncoding] autorelease];
return [[NSString alloc] initWithData:self encoding:NSUTF8StringEncoding];
}

@end
Expand All @@ -40,29 +40,20 @@ - (id)initWithCoder:(NSCoder *)aDecoder {

- (void)dealloc
{
[_href release];
[_layout release];
[_action release];
[_font release];
[_colorScheme release];
[_ref release];

// According to SDK doc, UIWebView's delegate must be set to nil before the view is released.
_webView.delegate = nil;
[_webView release];

[super dealloc];
self.webView.delegate = nil;

}

- (void)initCommon {
_webView = [[UIWebView alloc] init];
_webView.opaque = NO;
_webView.backgroundColor = [UIColor clearColor];
_webView.delegate = self;
[self addSubview:_webView];
self.webView = [[UIWebView alloc] init];
self.webView.opaque = NO;
self.webView.backgroundColor = [UIColor clearColor];
self.webView.delegate = self;
[self addSubview:self.webView];

// Prevent web view from scrolling
for (UIScrollView *subview in _webView.subviews)
for (UIScrollView *subview in self.webView.subviews)
if ([subview isKindOfClass:[UIScrollView class]]) {
subview.scrollEnabled = NO;
subview.bounces = NO;
Expand Down
24 changes: 13 additions & 11 deletions FacebookLikeViewDemo.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
objects = {

/* Begin PBXBuildFile section */
D307EF6213BB98A6007D866B /* Facebook+ForceDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = D307EF6113BB98A6007D866B /* Facebook+ForceDialog.m */; };
D307EF6213BB98A6007D866B /* Facebook+ForceDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = D307EF6113BB98A6007D866B /* Facebook+ForceDialog.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
D32BC59413B969FC0069C39F /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D32BC59313B969FC0069C39F /* UIKit.framework */; };
D32BC59613B969FC0069C39F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D32BC59513B969FC0069C39F /* Foundation.framework */; };
D32BC59813B969FC0069C39F /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D32BC59713B969FC0069C39F /* CoreGraphics.framework */; };
Expand All @@ -19,17 +19,17 @@
D32BC5AD13B969FC0069C39F /* FacebookLikeViewDemoViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = D32BC5AB13B969FC0069C39F /* FacebookLikeViewDemoViewController.xib */; };
D32BC5DA13B96AAA0069C39F /* FacebookLikeView.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5BE13B96AAA0069C39F /* FacebookLikeView.m */; };
D32BC5DB13B96AAA0069C39F /* FacebookLikeView.html in Resources */ = {isa = PBXBuildFile; fileRef = D32BC5C013B96AAA0069C39F /* FacebookLikeView.html */; };
D32BC5DC13B96AAA0069C39F /* Facebook.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5C313B96AAA0069C39F /* Facebook.m */; settings = {COMPILER_FLAGS = "-w"; }; };
D32BC5DC13B96AAA0069C39F /* Facebook.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5C313B96AAA0069C39F /* Facebook.m */; settings = {COMPILER_FLAGS = "-w -fno-objc-arc"; }; };
D32BC5DD13B96AAA0069C39F /* FBDialog.bundle in Resources */ = {isa = PBXBuildFile; fileRef = D32BC5C513B96AAA0069C39F /* FBDialog.bundle */; };
D32BC5DE13B96AAA0069C39F /* FBDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5C713B96AAA0069C39F /* FBDialog.m */; settings = {COMPILER_FLAGS = "-w"; }; };
D32BC5DF13B96AAA0069C39F /* FBLoginDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5C913B96AAA0069C39F /* FBLoginDialog.m */; settings = {COMPILER_FLAGS = "-w"; }; };
D32BC5E013B96AAA0069C39F /* FBRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5CB13B96AAA0069C39F /* FBRequest.m */; settings = {COMPILER_FLAGS = "-w"; }; };
D32BC5E113B96AAA0069C39F /* NSObject+SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5CF13B96AAA0069C39F /* NSObject+SBJSON.m */; settings = {COMPILER_FLAGS = "-w"; }; };
D32BC5E213B96AAA0069C39F /* NSString+SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5D113B96AAA0069C39F /* NSString+SBJSON.m */; settings = {COMPILER_FLAGS = "-w"; }; };
D32BC5E313B96AAA0069C39F /* SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5D313B96AAA0069C39F /* SBJSON.m */; settings = {COMPILER_FLAGS = "-w"; }; };
D32BC5E413B96AAA0069C39F /* SBJsonBase.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5D513B96AAA0069C39F /* SBJsonBase.m */; settings = {COMPILER_FLAGS = "-w"; }; };
D32BC5E513B96AAA0069C39F /* SBJsonParser.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5D713B96AAA0069C39F /* SBJsonParser.m */; settings = {COMPILER_FLAGS = "-w"; }; };
D32BC5E613B96AAA0069C39F /* SBJsonWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5D913B96AAA0069C39F /* SBJsonWriter.m */; settings = {COMPILER_FLAGS = "-w"; }; };
D32BC5DE13B96AAA0069C39F /* FBDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5C713B96AAA0069C39F /* FBDialog.m */; settings = {COMPILER_FLAGS = "-w -fno-objc-arc"; }; };
D32BC5DF13B96AAA0069C39F /* FBLoginDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5C913B96AAA0069C39F /* FBLoginDialog.m */; settings = {COMPILER_FLAGS = "-w -fno-objc-arc"; }; };
D32BC5E013B96AAA0069C39F /* FBRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5CB13B96AAA0069C39F /* FBRequest.m */; settings = {COMPILER_FLAGS = "-w -fno-objc-arc"; }; };
D32BC5E113B96AAA0069C39F /* NSObject+SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5CF13B96AAA0069C39F /* NSObject+SBJSON.m */; settings = {COMPILER_FLAGS = "-w -fno-objc-arc"; }; };
D32BC5E213B96AAA0069C39F /* NSString+SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5D113B96AAA0069C39F /* NSString+SBJSON.m */; settings = {COMPILER_FLAGS = "-w -fno-objc-arc"; }; };
D32BC5E313B96AAA0069C39F /* SBJSON.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5D313B96AAA0069C39F /* SBJSON.m */; settings = {COMPILER_FLAGS = "-w -fno-objc-arc"; }; };
D32BC5E413B96AAA0069C39F /* SBJsonBase.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5D513B96AAA0069C39F /* SBJsonBase.m */; settings = {COMPILER_FLAGS = "-w -fno-objc-arc"; }; };
D32BC5E513B96AAA0069C39F /* SBJsonParser.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5D713B96AAA0069C39F /* SBJsonParser.m */; settings = {COMPILER_FLAGS = "-w -fno-objc-arc"; }; };
D32BC5E613B96AAA0069C39F /* SBJsonWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = D32BC5D913B96AAA0069C39F /* SBJsonWriter.m */; settings = {COMPILER_FLAGS = "-w -fno-objc-arc"; }; };
EA46D9B917EE4237001E32DC /* [email protected] in Resources */ = {isa = PBXBuildFile; fileRef = EA46D9B817EE4237001E32DC /* [email protected] */; };
/* End PBXBuildFile section */

Expand Down Expand Up @@ -370,6 +370,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ENABLE_OBJC_ARC = YES;
COPY_PHASE_STRIP = NO;
GCC_DYNAMIC_NO_PIC = NO;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
Expand All @@ -385,6 +386,7 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ENABLE_OBJC_ARC = YES;
COPY_PHASE_STRIP = YES;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "FacebookLikeViewDemo/FacebookLikeViewDemo-Prefix.pch";
Expand Down
8 changes: 1 addition & 7 deletions FacebookLikeViewDemo/FacebookLikeViewDemoAppDelegate.m
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

@interface FacebookLikeViewDemoAppDelegate ()

@property (nonatomic, retain) IBOutlet FacebookLikeViewDemoViewController *viewController;
@property (nonatomic, strong) IBOutlet FacebookLikeViewDemoViewController *viewController;

@end

Expand Down Expand Up @@ -45,11 +45,5 @@ - (void)applicationDidEnterBackground:(UIApplication *)application {
forKey:SavedHTTPCookiesKey];
}

- (void)dealloc
{
[_window release];
[_viewController release];
[super dealloc];
}

@end
20 changes: 7 additions & 13 deletions FacebookLikeViewDemo/FacebookLikeViewDemoViewController.m
Original file line number Diff line number Diff line change
Expand Up @@ -12,26 +12,20 @@

@interface FacebookLikeViewDemoViewController () <FacebookLikeViewDelegate, FBSessionDelegate>

@property (readonly) Facebook *facebook;
@property (nonatomic, retain) IBOutlet FacebookLikeView *facebookLikeView;
@property (nonatomic, strong) Facebook *facebook;
@property (nonatomic, strong) IBOutlet FacebookLikeView *facebookLikeView;

@end

@implementation FacebookLikeViewDemoViewController

- (id)initWithCoder:(NSCoder *)aDecoder {
if (self = [super initWithCoder:aDecoder]) {
_facebook = [[Facebook alloc] initWithAppId:@"158575400878173" andDelegate:self];
self.facebook = [[Facebook alloc] initWithAppId:@"158575400878173" andDelegate:self];
}
return self;
}

- (void)dealloc
{
[_facebook release];
[_facebookLikeView release];
[super dealloc];
}

#pragma mark FBSessionDelegate

Expand Down Expand Up @@ -59,20 +53,20 @@ - (void)facebookLikeViewDidRender:(FacebookLikeView *)aFacebookLikeView {
}

- (void)facebookLikeViewDidLike:(FacebookLikeView *)aFacebookLikeView {
UIAlertView *alert = [[[UIAlertView alloc] initWithTitle:@"Liked"
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Liked"
message:@"You liked Yardsellr. Thanks!"
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil] autorelease];
otherButtonTitles:nil];
[alert show];
}

- (void)facebookLikeViewDidUnlike:(FacebookLikeView *)aFacebookLikeView {
UIAlertView *alert = [[[UIAlertView alloc] initWithTitle:@"Unliked"
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Unliked"
message:@"You unliked Yardsellr. Where's the love?"
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil] autorelease];
otherButtonTitles:nil];
[alert show];
}

Expand Down
8 changes: 4 additions & 4 deletions FacebookLikeViewDemo/main.m
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@

int main(int argc, char *argv[])
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
int retVal = UIApplicationMain(argc, argv, nil, nil);
[pool release];
return retVal;
@autoreleasepool {
int retVal = UIApplicationMain(argc, argv, nil, nil);
return retVal;
}
}

0 comments on commit da914d9

Please sign in to comment.