From 176981f5468486fa3ab5094c197c924903bdcc43 Mon Sep 17 00:00:00 2001 From: Kirill Zhdanovich Date: Fri, 9 Aug 2013 01:41:24 +0300 Subject: [PATCH] [iOS] Update guide titles --- iOS/offlineguides/GuideVC.mm | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/iOS/offlineguides/GuideVC.mm b/iOS/offlineguides/GuideVC.mm index baf4ce2..9fe6bfa 100644 --- a/iOS/offlineguides/GuideVC.mm +++ b/iOS/offlineguides/GuideVC.mm @@ -79,17 +79,7 @@ navigationType:(UIWebViewNavigationType)navigationType { NSString * str = [self normalizeUrl:[[request URL] absoluteString]]; - ArticleVC * v; - if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) - { - UISplitViewController * splitControl = (UISplitViewController *)[[UIApplication sharedApplication] delegate].window.rootViewController; - v = [splitControl.viewControllers objectAtIndex:0]; - } - else - v = [self.navigationController.viewControllers objectAtIndex:0]; - NSRange r = [str rangeOfString:@"." options:NSBackwardsSearch]; - if (r.length && [[str substringFromIndex:r.location + 1] isEqualToString:@"html"]) - self.navigationItem.title = [v getArticleName:[str substringToIndex:r.location]]; + [self updateTitle:str]; [self.webPages addObject:str]; if ([self isImage:str]) self.webView.scalesPageToFit = YES; @@ -136,7 +126,10 @@ shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherG return; } else + { [self.webView goBack]; + [self updateTitle:[self normalizeUrl:[[self.webView.request URL] absoluteString]]]; + } if ([self.webPages count] == 1 && UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) self.navigationItem.leftBarButtonItem = nil; [self.webPages removeLastObject]; @@ -184,4 +177,22 @@ shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherG { return (([pageUrl rangeOfString:@".svg"].location != NSNotFound) || ([pageUrl rangeOfString:@".png"].location != NSNotFound) || ([pageUrl rangeOfString:@".jpg"].location != NSNotFound)); } + +-(void)updateTitle:(NSString *)url +{ + NSRange r = [url rangeOfString:@"." options:NSBackwardsSearch]; + if (r.length && [[url substringFromIndex:r.location + 1] isEqualToString:@"html"]) + self.navigationItem.title = [[self getArticleController] getArticleName:[url substringToIndex:r.location]]; +} + +-(ArticleVC *)getArticleController +{ + if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) + { + UISplitViewController * splitControl = (UISplitViewController *)[[UIApplication sharedApplication] delegate].window.rootViewController; + return [splitControl.viewControllers objectAtIndex:0]; + } + else + return [self.navigationController.viewControllers objectAtIndex:0]; +} @end