From e508f0af3fd04d17f9f6cceef84cd9ad99bb79e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matu=CC=81s=CC=8C=20Mis=CC=8Ctrik?= Date: Wed, 12 Feb 2025 12:54:38 +0100 Subject: [PATCH] feat: GoodCoordinator init update --- .../Coordinators/AppCoordinator.swift | 6 ++++-- .../Coordinators/HomeCoordinator.swift | 1 - Sources/LegacyReactor/GoodCoordinator.swift | 15 +++++++-------- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/GoodReactor-Sample/GoodReactor-Sample/Coordinators/AppCoordinator.swift b/GoodReactor-Sample/GoodReactor-Sample/Coordinators/AppCoordinator.swift index 91b36c6..e2867c4 100644 --- a/GoodReactor-Sample/GoodReactor-Sample/Coordinators/AppCoordinator.swift +++ b/GoodReactor-Sample/GoodReactor-Sample/Coordinators/AppCoordinator.swift @@ -25,13 +25,15 @@ final class AppCoordinator: GoodCoordinator { init(window: UIWindow?) { self.window = window + + super.init() } - required init(rootViewController: UIViewController? = nil, parentCoordinator: (any Coordinator)? = nil) { + required init(rootViewController: UIViewController? = nil) { fatalError("init(rootViewController:parentCoordinator:) has not been implemented") } - required convenience init(parentCoordinator: any Coordinator) { + required init(parentCoordinator: Coordinator?) { fatalError("init(parentCoordinator:) has not been implemented") } diff --git a/GoodReactor-Sample/GoodReactor-Sample/Coordinators/HomeCoordinator.swift b/GoodReactor-Sample/GoodReactor-Sample/Coordinators/HomeCoordinator.swift index 79c8029..ebac535 100644 --- a/GoodReactor-Sample/GoodReactor-Sample/Coordinators/HomeCoordinator.swift +++ b/GoodReactor-Sample/GoodReactor-Sample/Coordinators/HomeCoordinator.swift @@ -32,7 +32,6 @@ class HomeCoordinator: GoodCoordinator { switch step { case .goToAbout: let aboutViewController = AboutCoordinator( - rootViewController: rootViewController, parentCoordinator: self ).start() diff --git a/Sources/LegacyReactor/GoodCoordinator.swift b/Sources/LegacyReactor/GoodCoordinator.swift index e1d809e..71dcd36 100644 --- a/Sources/LegacyReactor/GoodCoordinator.swift +++ b/Sources/LegacyReactor/GoodCoordinator.swift @@ -89,21 +89,20 @@ open class GoodCoordinator: NSObject, Coordinator { /// - Parameters: /// - rootViewController: The root view controller managed by this coordinator. Default value is nil. /// - parentCoordinator: The parent coordinator of this coordinator. Default value is nil. - public required init(rootViewController: UIViewController? = nil, parentCoordinator: Coordinator? = nil) { + public required init(rootViewController: UIViewController? = nil) { super.init() self.rootViewController = rootViewController - self.parentCoordinator = parentCoordinator - self.parentCoordinator?.children.addObject(self) } /// A convenience initializer that initializes a GoodCoordinator with a root view controller derived from the provided parent coordinator. /// - Parameter parentCoordinator: The parent coordinator to which this coordinator will belong. - public required convenience init(parentCoordinator: Coordinator) { - self.init( - rootViewController: parentCoordinator.rootViewController, - parentCoordinator: parentCoordinator - ) + public required init(parentCoordinator: Coordinator?) { + super.init() + + self.parentCoordinator = parentCoordinator + self.rootViewController = parentCoordinator?.rootViewController + self.parentCoordinator?.children.addObject(self) } // MARK: - Overridable