From 4ac78d9b416c997e48faed6b6b370f459e5ccc00 Mon Sep 17 00:00:00 2001 From: Matthew Chen Date: Tue, 23 May 2017 10:25:47 -0400 Subject: [PATCH 1/2] Replace app settings segue. // FREEBIE --- Signal/src/Storyboard/Main.storyboard | 12 +++++------- .../ViewControllers/CountryCodeViewController.m | 1 - .../ViewControllers/SettingsTableViewController.h | 14 -------------- .../ViewControllers/SettingsTableViewController.m | 9 +++++++++ Signal/src/ViewControllers/SignalsViewController.m | 5 ++++- 5 files changed, 18 insertions(+), 23 deletions(-) diff --git a/Signal/src/Storyboard/Main.storyboard b/Signal/src/Storyboard/Main.storyboard index 3ca92767b..b7fab93a7 100644 --- a/Signal/src/Storyboard/Main.storyboard +++ b/Signal/src/Storyboard/Main.storyboard @@ -1,9 +1,10 @@ - + + @@ -85,9 +86,6 @@ - - - @@ -398,7 +396,7 @@ - + @@ -508,7 +506,7 @@ - + @@ -627,7 +625,7 @@ - + diff --git a/Signal/src/ViewControllers/CountryCodeViewController.m b/Signal/src/ViewControllers/CountryCodeViewController.m index e76652358..60196297a 100644 --- a/Signal/src/ViewControllers/CountryCodeViewController.m +++ b/Signal/src/ViewControllers/CountryCodeViewController.m @@ -113,7 +113,6 @@ [self dismissViewControllerAnimated:YES completion:nil]; } - #pragma mark - UISearchBarDelegate - (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText diff --git a/Signal/src/ViewControllers/SettingsTableViewController.h b/Signal/src/ViewControllers/SettingsTableViewController.h index c41d718b1..f9bb8bf3c 100644 --- a/Signal/src/ViewControllers/SettingsTableViewController.h +++ b/Signal/src/ViewControllers/SettingsTableViewController.h @@ -6,18 +6,4 @@ @interface SettingsTableViewController : OWSTableViewController -//@property (strong, nonatomic) IBOutlet UILabel *registeredName; -//@property (strong, nonatomic) IBOutlet UILabel *registeredNumber; -//@property (strong, nonatomic) IBOutlet UILabel *networkStatusLabel; -//@property (strong, nonatomic) IBOutlet UILabel *networkStatusHeader; -//@property (strong, nonatomic) IBOutlet UILabel *privacyLabel; -//@property (strong, nonatomic) IBOutlet UILabel *notificationsLabel; -//@property (strong, nonatomic) IBOutlet UILabel *linkedDevicesLabel; -//@property (strong, nonatomic) IBOutlet UILabel *advancedLabel; -//@property (strong, nonatomic) IBOutlet UILabel *aboutLabel; -//@property (strong, nonatomic) IBOutlet UILabel *inviteLabel; -//@property (strong, nonatomic) IBOutlet UIButton *destroyAccountButton; -// -//- (IBAction)unregisterUser:(id)sender; - @end diff --git a/Signal/src/ViewControllers/SettingsTableViewController.m b/Signal/src/ViewControllers/SettingsTableViewController.m index 97fb9ad84..26286121b 100644 --- a/Signal/src/ViewControllers/SettingsTableViewController.m +++ b/Signal/src/ViewControllers/SettingsTableViewController.m @@ -63,6 +63,10 @@ [self.navigationItem setHidesBackButton:YES]; [self.navigationController.navigationBar setTranslucent:NO]; + self.navigationItem.leftBarButtonItem = + [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemStop + target:self + action:@selector(dismissWasPressed:)]; [self observeNotifications]; @@ -246,6 +250,11 @@ [self.navigationController pushViewController:vc animated:YES]; } +- (void)dismissWasPressed:(id)sender +{ + [self dismissViewControllerAnimated:YES completion:nil]; +} + #pragma mark - Table view data source - (void)unregisterUser diff --git a/Signal/src/ViewControllers/SignalsViewController.m b/Signal/src/ViewControllers/SignalsViewController.m index 2b042202b..f4169b21d 100644 --- a/Signal/src/ViewControllers/SignalsViewController.m +++ b/Signal/src/ViewControllers/SignalsViewController.m @@ -11,6 +11,7 @@ #import "OWSContactsManager.h" #import "PropertyListPreferences.h" #import "PushManager.h" +#import "SettingsTableViewController.h" #import "Signal-Swift.h" #import "TSAccountManager.h" #import "TSDatabaseView.h" @@ -225,7 +226,9 @@ NSString *const SignalsViewControllerSegueShowIncomingCall = @"ShowIncomingCallS } - (void)settingsButtonPressed:(id)sender { - [self performSegueWithIdentifier:@"ShowAppSettingsSegue" sender:sender]; + SettingsTableViewController *vc = [SettingsTableViewController new]; + UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:vc]; + [self presentViewController:navigationController animated:YES completion:nil]; } - (UIViewController *)previewingContext:(id)previewingContext From eeb510b90349696647de0638e69a94fc232ea841 Mon Sep 17 00:00:00 2001 From: Matthew Chen Date: Wed, 24 May 2017 09:33:17 -0400 Subject: [PATCH 2/2] Respond to CR. // FREEBIE --- Signal/src/Signal-Bridging-Header.h | 1 + Signal/src/Storyboard/Main.storyboard | 141 +----------------- Signal/src/UIStoryboard+OWS.swift | 7 +- .../ViewControllers/CallViewController.swift | 6 +- ...ExperienceUpgradesPageViewController.swift | 9 +- .../ViewControllers/MessagesViewController.m | 3 +- ...SConversationSettingsTableViewController.m | 2 +- 7 files changed, 10 insertions(+), 159 deletions(-) diff --git a/Signal/src/Signal-Bridging-Header.h b/Signal/src/Signal-Bridging-Header.h index 9f4a4d187..fda5f8fb7 100644 --- a/Signal/src/Signal-Bridging-Header.h +++ b/Signal/src/Signal-Bridging-Header.h @@ -23,6 +23,7 @@ #import "PrivacySettingsTableViewController.h" #import "PropertyListPreferences.h" #import "PushManager.h" +#import "SettingsTableViewController.h" #import "TSSocketManager.h" #import "TSStorageManager+Calling.h" #import "UIColor+OWS.h" diff --git a/Signal/src/Storyboard/Main.storyboard b/Signal/src/Storyboard/Main.storyboard index b7fab93a7..58eecda8f 100644 --- a/Signal/src/Storyboard/Main.storyboard +++ b/Signal/src/Storyboard/Main.storyboard @@ -375,28 +375,12 @@ - - - - - - - - - - - - - - - - - + @@ -502,34 +486,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -620,99 +576,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -752,11 +615,9 @@ - - diff --git a/Signal/src/UIStoryboard+OWS.swift b/Signal/src/UIStoryboard+OWS.swift index a702d1676..0b93a7ea9 100644 --- a/Signal/src/UIStoryboard+OWS.swift +++ b/Signal/src/UIStoryboard+OWS.swift @@ -6,15 +6,10 @@ import Foundation extension UIStoryboard { private enum StoryboardName: String { - case main = "Main", - registration = "Registration" + case main = "Main" } class var main: UIStoryboard { return UIStoryboard(name: StoryboardName.main.rawValue, bundle: Bundle.main) } - - class var registration: UIStoryboard { - return UIStoryboard(name: StoryboardName.registration.rawValue, bundle: Bundle.main) - } } diff --git a/Signal/src/ViewControllers/CallViewController.swift b/Signal/src/ViewControllers/CallViewController.swift index 8544f0181..f75f5be0a 100644 --- a/Signal/src/ViewControllers/CallViewController.swift +++ b/Signal/src/ViewControllers/CallViewController.swift @@ -803,10 +803,8 @@ class CallViewController: UIViewController, CallObserver, CallServiceObserver, R assert(fromViewController != nil) // Construct the "settings" view & push the "privacy settings" view. - let navigationController = UIStoryboard.main.instantiateViewController(withIdentifier: "SettingsNavigationController") as! UINavigationController - assert(navigationController.viewControllers.count == 1) - let privacySettingsViewController = PrivacySettingsTableViewController() - navigationController.pushViewController(privacySettingsViewController, animated:false) + let navigationController = UINavigationController(rootViewController:SettingsTableViewController()) + navigationController.pushViewController(PrivacySettingsTableViewController(), animated:false) fromViewController?.present(navigationController, animated: true, completion: nil) }) diff --git a/Signal/src/ViewControllers/ExperienceUpgradesPageViewController.swift b/Signal/src/ViewControllers/ExperienceUpgradesPageViewController.swift index edf9d722b..33848a53e 100644 --- a/Signal/src/ViewControllers/ExperienceUpgradesPageViewController.swift +++ b/Signal/src/ViewControllers/ExperienceUpgradesPageViewController.swift @@ -38,12 +38,9 @@ private class CallKitExperienceUpgradeViewController: ExperienceUpgradeViewContr assert(fromViewController != nil) // Construct the "settings" view & push the "privacy settings" view. - let navigationController = UIStoryboard.main.instantiateViewController(withIdentifier:"SettingsNavigationController") as! UINavigationController - assert(navigationController.viewControllers.count == 1) + let navigationController = UINavigationController(rootViewController:SettingsTableViewController()) + navigationController.pushViewController(PrivacySettingsTableViewController(), animated:false) - let privacySettingsViewController = PrivacySettingsTableViewController() - navigationController.pushViewController(privacySettingsViewController, animated:false) - fromViewController?.present(navigationController, animated: true, completion: nil) } } @@ -85,7 +82,7 @@ private class ExperienceUpgradeViewController: UIViewController { titleLabel.font = UIFont.ows_regularFont(withSize: ScaleFromIPhone5To7Plus(26, 32)) titleLabel.textColor = UIColor.white titleLabel.minimumScaleFactor = 0.5 - titleLabel.adjustsFontSizeToFitWidth = true; + titleLabel.adjustsFontSizeToFitWidth = true // Body label let bodyLabel = UILabel() diff --git a/Signal/src/ViewControllers/MessagesViewController.m b/Signal/src/ViewControllers/MessagesViewController.m index ab8802159..15dea01ff 100644 --- a/Signal/src/ViewControllers/MessagesViewController.m +++ b/Signal/src/ViewControllers/MessagesViewController.m @@ -2133,8 +2133,7 @@ typedef enum : NSUInteger { return; } - OWSConversationSettingsTableViewController *settingsVC = - [[UIStoryboard main] instantiateViewControllerWithIdentifier:@"OWSConversationSettingsTableViewController"]; + OWSConversationSettingsTableViewController *settingsVC = [OWSConversationSettingsTableViewController new]; settingsVC.conversationSettingsViewDelegate = self; [settingsVC configureWithThread:self.thread]; [self.navigationController pushViewController:settingsVC animated:YES]; diff --git a/Signal/src/ViewControllers/OWSConversationSettingsTableViewController.m b/Signal/src/ViewControllers/OWSConversationSettingsTableViewController.m index 84ab77034..371c080c0 100644 --- a/Signal/src/ViewControllers/OWSConversationSettingsTableViewController.m +++ b/Signal/src/ViewControllers/OWSConversationSettingsTableViewController.m @@ -405,7 +405,7 @@ NS_ASSUME_NONNULL_BEGIN return; } ShowGroupMembersViewController *showGroupMembersViewController = - [[UIStoryboard main] instantiateViewControllerWithIdentifier:@"ShowGroupMembersViewController"]; + [ShowGroupMembersViewController new]; [showGroupMembersViewController configWithThread:(TSGroupThread *)strongSelf.thread]; [strongSelf.navigationController pushViewController:showGroupMembersViewController animated:YES]; }],