From b5b40454bf2a4f4cc82d61fa8279c3c07c097d3c Mon Sep 17 00:00:00 2001 From: Evin Ugur Date: Thu, 9 May 2013 10:04:29 -0400 Subject: [PATCH 1/2] copy URL to pasteboard --- Classes/ViewControllers/StoryViewController.h | 1 + Classes/ViewControllers/StoryViewController.m | 23 +++++++++++++------ 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/Classes/ViewControllers/StoryViewController.h b/Classes/ViewControllers/StoryViewController.h index dc71797..b59acc4 100755 --- a/Classes/ViewControllers/StoryViewController.h +++ b/Classes/ViewControllers/StoryViewController.h @@ -51,6 +51,7 @@ - (void)saveCurrentStory:(id)sender; - (void)saveOnInstapaper:(id)sender; - (void)hideCurrentStory:(id)sender; +- (void)copyURL:(id)sender; - (void)setScore:(int)score; - (void)setNumberOfComments:(unsigned)num; diff --git a/Classes/ViewControllers/StoryViewController.m b/Classes/ViewControllers/StoryViewController.m index 1e3563c..00b5ed5 100755 --- a/Classes/ViewControllers/StoryViewController.m +++ b/Classes/ViewControllers/StoryViewController.m @@ -17,7 +17,7 @@ #import #import - +#import @implementation StoryViewController @synthesize story, scoreItem, commentCountItem, segmentedControl, loadingView, toggleButtonItem, webview; @@ -360,7 +360,7 @@ - (IBAction)share:(id)sender delegate:(id )self cancelButtonTitle:@"Cancel" destructiveButtonTitle:nil - otherButtonTitles:@"E-mail Link", @"Open Link in Safari", @"Hide on reddit", @"Save on reddit", @"Save on Instapaper", nil]; + otherButtonTitles:@"E-mail Link", @"Copy URL", @"Open Link in Safari", @"Hide on reddit", @"Save on reddit", @"Save on Instapaper", nil]; currentSheet.actionSheetStyle = UIActionSheetStyleDefault; @@ -424,14 +424,18 @@ - (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger otherButtonTitles:nil] autorelease] show]; } } + + else if (buttonIndex == 0){ + [self copyURL:nil]; + } - else if(buttonIndex == 1 ) + else if(buttonIndex == 2 ) { //open link in safari //[[Beacon shared] startSubBeaconWithName:@"openedInSafari" timeSession:NO]; [[UIApplication sharedApplication] openURL:[NSURL URLWithString:url]]; } - else if (buttonIndex == 2) + else if (buttonIndex == 3) { if (![[LoginController sharedLoginController] isLoggedIn]) [LoginViewController presentWithDelegate:(id )self context:@"hide"]; @@ -441,7 +445,7 @@ - (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger // [[Beacon shared] startSubBeaconWithName:@"savedOnReddit" timeSession:NO]; } } - else if (buttonIndex == 3) + else if (buttonIndex == 4) { if (![[LoginController sharedLoginController] isLoggedIn]) [LoginViewController presentWithDelegate:(id )self context:@"save"]; @@ -451,15 +455,20 @@ - (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger // [[Beacon shared] startSubBeaconWithName:@"savedOnReddit" timeSession:NO]; } } - else if(buttonIndex == 4) + else if(buttonIndex == 5) { [self saveOnInstapaper:nil]; //[[Beacon shared] startSubBeaconWithName:@"instapaper" timeSession:NO]; } - else if(buttonIndex == 4) + else if(buttonIndex == 5) [self actionSheetCancel:currentSheet]; } +-(void)copyURL:(id)sender{ + UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; + pasteboard.string = story.URL; +} + - (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error { [controller dismissModalViewControllerAnimated:YES]; From e90feb16e4b295c87ac731ed45c482801c419669 Mon Sep 17 00:00:00 2001 From: Evin Ugur Date: Fri, 10 May 2013 08:44:05 -0400 Subject: [PATCH 2/2] released pointer&formatted str as NSURL --- Classes/ViewControllers/StoryViewController.m | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Classes/ViewControllers/StoryViewController.m b/Classes/ViewControllers/StoryViewController.m index 00b5ed5..5218a7a 100755 --- a/Classes/ViewControllers/StoryViewController.m +++ b/Classes/ViewControllers/StoryViewController.m @@ -466,7 +466,8 @@ - (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger -(void)copyURL:(id)sender{ UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; - pasteboard.string = story.URL; + pasteboard.url = [NSURL URLWithString: story.URL]; + [pasteboard release]; } - (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error