From f84682e32633cee9c582fbc20fbe98cfa12f7d5c Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Wed, 17 May 2023 05:18:28 +0300 Subject: Open links with in-app Safari --- Juick/ViewControllers/MessagesViewController.h | 3 ++- Juick/ViewControllers/MessagesViewController.m | 13 ++++++++++--- 2 files changed, 12 insertions(+), 4 deletions(-) (limited to 'Juick/ViewControllers') diff --git a/Juick/ViewControllers/MessagesViewController.h b/Juick/ViewControllers/MessagesViewController.h index 55a2bde..d3e3f07 100644 --- a/Juick/ViewControllers/MessagesViewController.h +++ b/Juick/ViewControllers/MessagesViewController.h @@ -8,6 +8,7 @@ #import #import "Message.h" +@import SafariServices; @protocol MessageCellDelegate; @@ -17,7 +18,7 @@ extern NSString* const messageCellIdentifier; -(void) loadMore; @end -@interface MessagesViewController : UITableViewController +@interface MessagesViewController : UITableViewController @property(nonatomic, strong) NSString *path; @property(nonatomic, strong) NSDictionary *params; @property(nonatomic, assign) BOOL shouldScrollToUnreadOnRefresh; diff --git a/Juick/ViewControllers/MessagesViewController.m b/Juick/ViewControllers/MessagesViewController.m index 8563fca..9fad013 100644 --- a/Juick/ViewControllers/MessagesViewController.m +++ b/Juick/ViewControllers/MessagesViewController.m @@ -226,11 +226,18 @@ NSString* const messageCellIdentifier = @"messageCell"; [self performSegueWithIdentifier:@"profileSegue" sender:self];*/ } +- (void)safariViewControllerDidFinish:(SFSafariViewController *)controller { + [self dismissViewControllerAnimated:YES completion:nil]; +} + -(void)linkClicked:(NSString *)urlString { NSURL *url = [NSURL URLWithString:urlString]; - [[UIApplication sharedApplication] openURL:url options:@{} completionHandler:^(BOOL success) { - - }]; + SFSafariViewControllerConfiguration *configuration = [[SFSafariViewControllerConfiguration alloc] init]; + configuration.entersReaderIfAvailable = NO; + configuration.barCollapsingEnabled = YES; + SFSafariViewController *safariViewController = [[SFSafariViewController alloc] initWithURL:url configuration:configuration]; + safariViewController.delegate = self; + [self presentViewController:safariViewController animated:YES completion:nil]; } - (void)dealloc -- cgit v1.2.3