From 8e6c1f313ecffbda2372dcc2dfacff1eea1e1a21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20Spie=C3=9F?= Date: Wed, 25 Nov 2015 13:08:21 +0100 Subject: [PATCH 1/2] Extract repeating webview cell code into method --- Classes/BITUpdateViewController.m | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/Classes/BITUpdateViewController.m b/Classes/BITUpdateViewController.m index abc084cc27..553a09a646 100644 --- a/Classes/BITUpdateViewController.m +++ b/Classes/BITUpdateViewController.m @@ -393,9 +393,8 @@ } } } - - BITWebTableViewCell *cell = [[BITWebTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:kWebCellIdentifier]; - [self configureWebCell:cell forAppVersion:appVersion]; + + BITWebTableViewCell *cell = [self webCellWithAppVersion:appVersion]; [_cells addObject:cell]; if (breakAfterThisAppVersion) break; @@ -405,6 +404,12 @@ [self showHidePreviousVersionsButton]; } +- (BITWebTableViewCell *)webCellWithAppVersion:(BITAppVersionMetaInfo *)appVersion { + BITWebTableViewCell *cell = [[BITWebTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:kWebCellIdentifier]; + [self configureWebCell:cell forAppVersion:appVersion]; + return cell; +} + - (void)showPreviousVersionAction { _showAllVersions = YES; BOOL showAllPending = NO; @@ -420,10 +425,8 @@ continue; // skip already shown } } - - BITWebTableViewCell *cell = [[BITWebTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:kWebCellIdentifier]; - [self configureWebCell:cell forAppVersion:appVersion]; - [_cells addObject:cell]; + + [_cells addObject:[self webCellWithAppVersion:appVersion]]; } [self.tableView reloadData]; [self showHidePreviousVersionsButton]; From c9260d8418179a8b886ea90ede25bdbce735687c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lukas=20Spie=C3=9F?= Date: Wed, 25 Nov 2015 13:08:44 +0100 Subject: [PATCH 2/2] Enable tapping of links in release notes --- Classes/BITWebTableViewCell.m | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/Classes/BITWebTableViewCell.m b/Classes/BITWebTableViewCell.m index 584d6b03d6..e03eac5411 100644 --- a/Classes/BITWebTableViewCell.m +++ b/Classes/BITWebTableViewCell.m @@ -155,16 +155,26 @@ body { font: 13px 'Helvetica Neue', Helvetica; color:#626262; word-wrap:break-wo } -#pragma mark - UIWebView +#pragma mark - UIWebViewDelegate - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { - if(navigationType == UIWebViewNavigationTypeOther) - return YES; - - return NO; + switch (navigationType) { + case UIWebViewNavigationTypeLinkClicked: + [self openURL:request.URL]; + return NO; + break; + case UIWebViewNavigationTypeOther: + return YES; + break; + case UIWebViewNavigationTypeBackForward: + case UIWebViewNavigationTypeFormResubmitted: + case UIWebViewNavigationTypeFormSubmitted: + case UIWebViewNavigationTypeReload: + return NO; + break; + } } - - (void)webViewDidFinishLoad:(UIWebView *)webView { if(_webViewContent) [self showWebView]; @@ -181,6 +191,12 @@ body { font: 13px 'Helvetica Neue', Helvetica; color:#626262; word-wrap:break-wo self.webViewSize = CGSizeMake(fittingSize.width, [output integerValue]); } +#pragma mark - Helper + +- (void)openURL:(NSURL *)URL { + [[UIApplication sharedApplication] openURL:URL]; +} + @end #endif /* HOCKEYSDK_FEATURE_UPDATES */