You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-ios/Signal/src/ViewControllers/Registration/OnboardingController.swift

51 lines
1.8 KiB
Swift

//
// Copyright (c) 2019 Open Whisper Systems. All rights reserved.
//
import UIKit
@objc
public protocol OnboardingController: class {
func initialViewController() -> UIViewController
func onboardingSplashDidComplete(viewController: UIViewController)
func onboardingPermissionsWasSkipped(viewController: UIViewController)
func onboardingPermissionsDidComplete(viewController: UIViewController)
func onboardingPhoneNumberDidComplete(viewController: UIViewController)
}
// MARK: -
@objc
public class OnboardingControllerImpl: NSObject, OnboardingController {
public func initialViewController() -> UIViewController {
let view = OnboardingSplashViewController(onboardingController: self)
return view
}
public func onboardingSplashDidComplete(viewController: UIViewController) {
let view = OnboardingPermissionsViewController(onboardingController: self)
viewController.navigationController?.pushViewController(view, animated: true)
}
public func onboardingPermissionsWasSkipped(viewController: UIViewController) {
pushPhoneNumberView(viewController: viewController)
}
public func onboardingPermissionsDidComplete(viewController: UIViewController) {
pushPhoneNumberView(viewController: viewController)
}
private func pushPhoneNumberView(viewController: UIViewController) {
let view = OnboardingPhoneNumberViewController(onboardingController: self)
viewController.navigationController?.pushViewController(view, animated: true)
}
public func onboardingPhoneNumberDidComplete(viewController: UIViewController) {
// CodeVerificationViewController *vc = [CodeVerificationViewController new];
// [weakSelf.navigationController pushViewController:vc animated:YES];
}
}