New story traversal buttons.

This commit is contained in:
Samuel Clay 2013-03-05 17:00:03 -08:00
parent e0b0e391a1
commit 36257c6d0e
17 changed files with 651 additions and 3619 deletions

View file

@ -468,9 +468,11 @@
} else {
self.submitButton.title = @"Share this story";
}
} else if ([self.currentType isEqualToString: @"reply"] ||
[self.currentType isEqualToString:@"edit-reply"]) {
self.submitButton.enabled = [self.commentField.text length] > 0;
}
}
@end

File diff suppressed because it is too large Load diff

View file

@ -206,7 +206,7 @@
footerString
];
NSLog(@"\n\n\n\nhtmlString:\n\n\n%@\n\n\n", htmlString);
// NSLog(@"\n\n\n\nhtmlString:\n\n\n%@\n\n\n", htmlString);
NSString *path = [[NSBundle mainBundle] bundlePath];
NSURL *baseURL = [NSURL fileURLWithPath:path];
@ -373,26 +373,28 @@
- (NSString *)getComments {
NSString *comments = @"<div class=\"NB-feed-story-comments\">";
if ([self.activeStory objectForKey:@"share_count"] != [NSNull null] &&
[[self.activeStory objectForKey:@"share_count"] intValue] > 0) {
if ([self.activeStory objectForKey:@"comment_count"] != [NSNull null] &&
[[self.activeStory objectForKey:@"comment_count"] intValue] > 0) {
NSDictionary *story = self.activeStory;
NSArray *friendsCommentsArray = [story objectForKey:@"friend_comments"];
NSArray *publicCommentsArray = [story objectForKey:@"public_comments"];
NSString *commentHeader = [NSString stringWithFormat:@
"<div class=\"NB-story-comments-friends-header-wrapper\">"
" <div class=\"NB-story-comments-friends-header\">%i comment%@</div>"
"</div>",
[[story objectForKey:@"comment_count_friends"] intValue],
[[story objectForKey:@"comment_count_friends"] intValue] == 1 ? @"" : @"s"];
comments = [comments stringByAppendingString:commentHeader];
// add friends comments
for (int i = 0; i < friendsCommentsArray.count; i++) {
NSString *comment = [self getComment:[friendsCommentsArray objectAtIndex:i]];
comments = [comments stringByAppendingString:comment];
}
if ([[story objectForKey:@"comment_count_friends"] intValue] > 0 ) {
NSString *commentHeader = [NSString stringWithFormat:@
"<div class=\"NB-story-comments-friends-header-wrapper\">"
" <div class=\"NB-story-comments-friends-header\">%i comment%@</div>"
"</div>",
[[story objectForKey:@"comment_count_friends"] intValue],
[[story objectForKey:@"comment_count_friends"] intValue] == 1 ? @"" : @"s"];
comments = [comments stringByAppendingString:commentHeader];
// add friends comments
for (int i = 0; i < friendsCommentsArray.count; i++) {
NSString *comment = [self getComment:[friendsCommentsArray objectAtIndex:i]];
comments = [comments stringByAppendingString:comment];
}
}
if ([[story objectForKey:@"comment_count_public"] intValue] > 0 ) {
NSString *publicCommentHeader = [NSString stringWithFormat:@
@ -405,6 +407,7 @@
comments = [comments stringByAppendingString:@"</div>"];
comments = [comments stringByAppendingString:publicCommentHeader];
comments = [comments stringByAppendingFormat:@"<div class=\"NB-feed-story-comments\">"];
// add public comments
for (int i = 0; i < publicCommentsArray.count; i++) {
NSString *comment = [self getComment:[publicCommentsArray objectAtIndex:i]];

View file

@ -21,9 +21,8 @@
NewsBlurAppDelegate *appDelegate;
UIProgressView *progressView;
UIToolbar *toolbar;
UIBarButtonItem *buttonPrevious;
UIBarButtonItem *buttonNext;
UIButton *buttonPrevious;
UIButton *buttonNext;
UIBarButtonItem *activity;
UIActivityIndicatorView *loadingIndicator;
UIToolbar *bottomPlaceholderToolbar;
@ -48,9 +47,8 @@
@property (nonatomic, strong) UIActivityIndicatorView *loadingIndicator;
@property (nonatomic) IBOutlet UIProgressView *progressView;
@property (strong, nonatomic) IBOutlet UIView *progressViewContainer;
@property (nonatomic) IBOutlet UIToolbar *toolbar;
@property (nonatomic) IBOutlet UIBarButtonItem *buttonPrevious;
@property (nonatomic) IBOutlet UIBarButtonItem *buttonNext;
@property (nonatomic) IBOutlet UIButton *buttonPrevious;
@property (nonatomic) IBOutlet UIButton *buttonNext;
@property (nonatomic) UIBarButtonItem *buttonBack;
@property (nonatomic) IBOutlet UIBarButtonItem *activity;
@property (nonatomic) IBOutlet UIBarButtonItem *buttonAction;

View file

@ -34,7 +34,7 @@
@synthesize progressViewContainer;
@synthesize separatorBarButton;
@synthesize spacerBarButton, spacer2BarButton, spacer3BarButton;
@synthesize toolbar, rightToolbar;
@synthesize rightToolbar;
@synthesize buttonPrevious;
@synthesize buttonNext;
@synthesize buttonAction;
@ -92,11 +92,9 @@
[self.progressViewContainer addGestureRecognizer:tap];
self.progressViewContainer.hidden = YES;
toolbar.autoresizingMask = toolbar.autoresizingMask | UIViewAutoresizingFlexibleHeight;
rightToolbar = [[TransparentToolbar alloc]
initWithFrame:CGRectMake(0, 0, 80,
self.toolbar.frame.size.height)];
initWithFrame:CGRectMake(0, 0, 80, 44)];
spacerBarButton = [[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];
@ -629,29 +627,25 @@
if (readStoryCount == 0 ||
(readStoryCount == 1 &&
[appDelegate.readStories lastObject] == [appDelegate.activeStory objectForKey:@"id"])) {
[buttonPrevious setStyle:UIBarButtonItemStyleBordered];
[buttonPrevious setTitle:@"Previous"];
[buttonPrevious setEnabled:NO];
[buttonPrevious setAlpha:.4];
} else {
[buttonPrevious setStyle:UIBarButtonItemStyleBordered];
[buttonPrevious setTitle:@"Previous"];
[buttonPrevious setEnabled:YES];
[buttonPrevious setAlpha:1];
}
// setting up the NEXT UNREAD STORY BUTTON
buttonNext.enabled = YES;
int nextIndex = [appDelegate indexOfNextUnreadStory];
int unreadCount = [appDelegate unreadCount];
if (nextIndex == -1 && unreadCount > 0) {
[buttonNext setStyle:UIBarButtonItemStyleBordered];
[buttonNext setTitle:@"Next Unread"];
} else if (nextIndex == -1) {
[buttonNext setStyle:UIBarButtonItemStyleDone];
[buttonNext setTitle:@"Done"];
if ((nextIndex == -1 && unreadCount > 0) ||
nextIndex != -1) {
[buttonNext setTitle:@"NEXT" forState:UIControlStateNormal];
[buttonNext setBackgroundImage:[UIImage imageNamed:@"traverse_next.png"] forState:UIControlStateNormal];
} else {
[buttonNext setStyle:UIBarButtonItemStyleBordered];
[buttonNext setTitle:@"Next Unread"];
[buttonNext setTitle:@"DONE" forState:UIControlStateNormal];
[buttonNext setBackgroundImage:[UIImage imageNamed:@"traverse_done.png"] forState:UIControlStateNormal];
}
buttonNext.enabled = YES;
float unreads = (float)[appDelegate unreadCount];
float total = [appDelegate originalStoryCount];

File diff suppressed because it is too large Load diff

View file

@ -328,6 +328,14 @@
FF67D3CD168A73380057A7DA /* zepto.js in Resources */ = {isa = PBXBuildFile; fileRef = FF67D3BF168A708D0057A7DA /* zepto.js */; };
FF67D3CE168A73380057A7DA /* trainer.js in Resources */ = {isa = PBXBuildFile; fileRef = FF67D3C4168A71870057A7DA /* trainer.js */; };
FF67D3CF168A73380057A7DA /* fastTouch.js in Resources */ = {isa = PBXBuildFile; fileRef = FF67D3C6168A71B30057A7DA /* fastTouch.js */; };
FF688E4616E6ADB1003B7B42 /* traverse_next.png in Resources */ = {isa = PBXBuildFile; fileRef = FF688E4416E6ADB1003B7B42 /* traverse_next.png */; };
FF688E4716E6ADB1003B7B42 /* traverse_next@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FF688E4516E6ADB1003B7B42 /* traverse_next@2x.png */; };
FF688E4A16E6AFD3003B7B42 /* traverse_previous.png in Resources */ = {isa = PBXBuildFile; fileRef = FF688E4816E6AFD3003B7B42 /* traverse_previous.png */; };
FF688E4B16E6AFD3003B7B42 /* traverse_previous@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FF688E4916E6AFD3003B7B42 /* traverse_previous@2x.png */; };
FF688E4E16E6B3E1003B7B42 /* traverse_done.png in Resources */ = {isa = PBXBuildFile; fileRef = FF688E4C16E6B3E1003B7B42 /* traverse_done.png */; };
FF688E4F16E6B3E1003B7B42 /* traverse_done@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FF688E4D16E6B3E1003B7B42 /* traverse_done@2x.png */; };
FF688E5216E6B8D0003B7B42 /* traverse_background.png in Resources */ = {isa = PBXBuildFile; fileRef = FF688E5016E6B8D0003B7B42 /* traverse_background.png */; };
FF688E5316E6B8D0003B7B42 /* traverse_background@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = FF688E5116E6B8D0003B7B42 /* traverse_background@2x.png */; };
FF6A233216448E0700E15989 /* StoryPageControl.m in Sources */ = {isa = PBXBuildFile; fileRef = FF6A233116448E0700E15989 /* StoryPageControl.m */; };
FF6A23391644957800E15989 /* StoryPageControl.xib in Resources */ = {isa = PBXBuildFile; fileRef = FF6A23361644903900E15989 /* StoryPageControl.xib */; };
FF793E1B13F1A9F700F282D2 /* ASIDataCompressor.m in Sources */ = {isa = PBXBuildFile; fileRef = FF793E1813F1A9F700F282D2 /* ASIDataCompressor.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
@ -860,6 +868,14 @@
FF67D3BF168A708D0057A7DA /* zepto.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = zepto.js; path = ../static/zepto.js; sourceTree = "<group>"; };
FF67D3C4168A71870057A7DA /* trainer.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = trainer.js; path = ../static/trainer.js; sourceTree = "<group>"; };
FF67D3C6168A71B30057A7DA /* fastTouch.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; name = fastTouch.js; path = ../static/fastTouch.js; sourceTree = "<group>"; };
FF688E4416E6ADB1003B7B42 /* traverse_next.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = traverse_next.png; sourceTree = "<group>"; };
FF688E4516E6ADB1003B7B42 /* traverse_next@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "traverse_next@2x.png"; sourceTree = "<group>"; };
FF688E4816E6AFD3003B7B42 /* traverse_previous.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = traverse_previous.png; sourceTree = "<group>"; };
FF688E4916E6AFD3003B7B42 /* traverse_previous@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "traverse_previous@2x.png"; sourceTree = "<group>"; };
FF688E4C16E6B3E1003B7B42 /* traverse_done.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = traverse_done.png; sourceTree = "<group>"; };
FF688E4D16E6B3E1003B7B42 /* traverse_done@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "traverse_done@2x.png"; sourceTree = "<group>"; };
FF688E5016E6B8D0003B7B42 /* traverse_background.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = traverse_background.png; sourceTree = "<group>"; };
FF688E5116E6B8D0003B7B42 /* traverse_background@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "traverse_background@2x.png"; sourceTree = "<group>"; };
FF6A233016448E0700E15989 /* StoryPageControl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StoryPageControl.h; sourceTree = "<group>"; };
FF6A233116448E0700E15989 /* StoryPageControl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StoryPageControl.m; sourceTree = "<group>"; };
FF6A23361644903900E15989 /* StoryPageControl.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = StoryPageControl.xib; path = ../Classes/StoryPageControl.xib; sourceTree = "<group>"; };
@ -1169,6 +1185,14 @@
431B857615A132B600DCE497 /* Images */ = {
isa = PBXGroup;
children = (
FF688E5016E6B8D0003B7B42 /* traverse_background.png */,
FF688E5116E6B8D0003B7B42 /* traverse_background@2x.png */,
FF688E4C16E6B3E1003B7B42 /* traverse_done.png */,
FF688E4D16E6B3E1003B7B42 /* traverse_done@2x.png */,
FF688E4816E6AFD3003B7B42 /* traverse_previous.png */,
FF688E4916E6AFD3003B7B42 /* traverse_previous@2x.png */,
FF688E4416E6ADB1003B7B42 /* traverse_next.png */,
FF688E4516E6ADB1003B7B42 /* traverse_next@2x.png */,
FF22FE7416E557D80046165A /* toolbar_tall_background.png */,
FF22FE7516E557D80046165A /* toolbar_tall_background@2x.png */,
FF22FE7016E554FD0046165A /* barbutton_sendto.png */,
@ -2197,6 +2221,14 @@
FF22FE7316E554FD0046165A /* barbutton_sendto@2x.png in Resources */,
FF22FE7616E557D80046165A /* toolbar_tall_background.png in Resources */,
FF22FE7716E557D80046165A /* toolbar_tall_background@2x.png in Resources */,
FF688E4616E6ADB1003B7B42 /* traverse_next.png in Resources */,
FF688E4716E6ADB1003B7B42 /* traverse_next@2x.png in Resources */,
FF688E4A16E6AFD3003B7B42 /* traverse_previous.png in Resources */,
FF688E4B16E6AFD3003B7B42 /* traverse_previous@2x.png in Resources */,
FF688E4E16E6B3E1003B7B42 /* traverse_done.png in Resources */,
FF688E4F16E6B3E1003B7B42 /* traverse_done@2x.png in Resources */,
FF688E5216E6B8D0003B7B42 /* traverse_background.png in Resources */,
FF688E5316E6B8D0003B7B42 /* traverse_background@2x.png in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};

File diff suppressed because it is too large Load diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 684 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 912 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 671 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 715 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1 KiB

View file

@ -165,6 +165,7 @@
body {
text-rendering: optimizeLegibility;
margin: 0;
padding-bottom: 36px;
-webkit-text-size-adjust: none;
font-size: 14px;