NewsBlur/clients/ios/Classes/NBActivityItemProvider.m

69 lines
2.6 KiB
Mathematica
Raw Normal View History

//
// NBActivityItemProvider.m
// NewsBlur
//
// Created by Samuel Clay on 12/15/14.
// Copyright (c) 2014 NewsBlur. All rights reserved.
//
#import "NBActivityItemProvider.h"
@implementation NBActivityItemProvider
- (instancetype)initWithUrl:(NSURL *)_url authorName:(NSString *)_authorName text:(NSString *)_text title:(NSString *)_title feedTitle:(NSString *)_feedTitle {
2015-10-03 17:59:35 -07:00
if (self = [super initWithPlaceholderItem:_url]) {
2015-09-30 13:28:14 -07:00
url = _url;
authorName = _authorName;
text = _text;
title = _title;
feedTitle = _feedTitle;
}
return self;
}
- (id)item {
2015-09-30 13:28:14 -07:00
if ([self.placeholderItem isKindOfClass:[NSString class]]) {
if ([self.activityType isEqualToString:UIActivityTypeMessage]) {
return [NSString stringWithFormat:@"%@\n%@", title, url];
} else if ([self.activityType isEqualToString:UIActivityTypePostToFacebook] ||
[self.activityType isEqualToString:UIActivityTypeMail]) {
return [NSString stringWithFormat:@"%@\n%@\n%@", title, url, text];
} else if ([self.activityType isEqualToString:@"NBCopyLinkActivity"] ||
[self.activityType isEqualToString:@"TUSafariActivity"] ||
[self.activityType isEqualToString:@"ARChromeActivity"]) {
return url;
2015-09-30 13:28:14 -07:00
} else {
return [NSString stringWithFormat:@"%@\n%@", title, url];
}
2015-10-20 11:55:17 -07:00
} else if ([self.placeholderItem isKindOfClass:[NSURL class]]) {
return url;
2015-09-30 13:28:14 -07:00
}
return [NSString stringWithFormat:@"%@\n%@", title, url];
}
-(id)activityViewController:(UIActivityViewController *)activityViewController itemForActivityType:(NSString *)activityType {
if ([activityType isEqualToString:UIActivityTypeMail] ||
[activityType isEqualToString:@"com.evernote.iPhone.Evernote.EvernoteShare"]) {
return @{@"body": text ?: @"", @"subject": title};
} else if ([activityType isEqualToString:UIActivityTypePostToTwitter] ||
[activityType isEqualToString:UIActivityTypePostToFacebook] ||
[activityType isEqualToString:UIActivityTypePostToWeibo]) {
2015-09-30 13:28:14 -07:00
return [NSString stringWithFormat:@"%@\n%@", title, url];
} else if ([activityType isEqualToString:@"NBCopyLinkActivity"] ||
[self.activityType isEqualToString:@"TUSafariActivity"] ||
[self.activityType isEqualToString:@"ARChromeActivity"]) {
return url;
}
2015-09-30 13:28:14 -07:00
return [NSString stringWithFormat:@"%@\n%@", title, url];
}
- (NSString *)activityViewController:(UIActivityViewController *)activityViewController subjectForActivityType:(NSString *)activityType {
return title;
}
@end