Commit 68df3bed by Dmitriy Stepanets

Prepearing page controller

parent e085a688
No preview for this file type
......@@ -153,6 +153,11 @@
CDC6126225E8DAB800188DA7 /* MoonPhaseCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDC6126125E8DAB800188DA7 /* MoonPhaseCell.swift */; };
CDC6126625E9085600188DA7 /* GraphLine.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDC6126525E9085600188DA7 /* GraphLine.swift */; };
CDC6126A25E90C8800188DA7 /* GraphLineSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDC6126925E90C8800188DA7 /* GraphLineSettings.swift */; };
CDC62C4526C13B9200156643 /* OnboardingPageController.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDC62C4426C13B9200156643 /* OnboardingPageController.swift */; };
CDC62C4726C13BE300156643 /* OnboardingForecastsController.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDC62C4626C13BE300156643 /* OnboardingForecastsController.swift */; };
CDC62C4926C13BFE00156643 /* OnboardingAlertsController.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDC62C4826C13BFE00156643 /* OnboardingAlertsController.swift */; };
CDC62C4B26C13C1700156643 /* OnboardingRadarController.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDC62C4A26C13C1700156643 /* OnboardingRadarController.swift */; };
CDC62C4D26C13E6600156643 /* InitialOnboardingCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDC62C4C26C13E6600156643 /* InitialOnboardingCoordinator.swift */; };
CDD0F1E52572425200CF5017 /* SF-Pro.ttf in Resources */ = {isa = PBXBuildFile; fileRef = CDD0F1E42572425200CF5017 /* SF-Pro.ttf */; };
CDD0F1E82572429E00CF5017 /* AppFont.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDD0F1E72572429E00CF5017 /* AppFont.swift */; };
CDD0F1EE25725BCF00CF5017 /* ThemeManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = CDD0F1ED25725BCF00CF5017 /* ThemeManager.swift */; };
......@@ -408,6 +413,11 @@
CDC6126125E8DAB800188DA7 /* MoonPhaseCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MoonPhaseCell.swift; sourceTree = "<group>"; };
CDC6126525E9085600188DA7 /* GraphLine.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GraphLine.swift; sourceTree = "<group>"; };
CDC6126925E90C8800188DA7 /* GraphLineSettings.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GraphLineSettings.swift; sourceTree = "<group>"; };
CDC62C4426C13B9200156643 /* OnboardingPageController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingPageController.swift; sourceTree = "<group>"; };
CDC62C4626C13BE300156643 /* OnboardingForecastsController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingForecastsController.swift; sourceTree = "<group>"; };
CDC62C4826C13BFE00156643 /* OnboardingAlertsController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingAlertsController.swift; sourceTree = "<group>"; };
CDC62C4A26C13C1700156643 /* OnboardingRadarController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingRadarController.swift; sourceTree = "<group>"; };
CDC62C4C26C13E6600156643 /* InitialOnboardingCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InitialOnboardingCoordinator.swift; sourceTree = "<group>"; };
CDD0F1E42572425200CF5017 /* SF-Pro.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; path = "SF-Pro.ttf"; sourceTree = "<group>"; };
CDD0F1E72572429E00CF5017 /* AppFont.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppFont.swift; sourceTree = "<group>"; };
CDD0F1ED25725BCF00CF5017 /* ThemeManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ThemeManager.swift; sourceTree = "<group>"; };
......@@ -616,6 +626,7 @@
CD7BF1572620410800A30DF5 /* RadarCoordinator.swift */,
CEC8FBB1263976240001A6BF /* OnboardingCoordinator.swift */,
CD8579692671FA8100CC4CDA /* ShortsCoordinator.swift */,
CDC62C4C26C13E6600156643 /* InitialOnboardingCoordinator.swift */,
);
path = Coordinators;
sourceTree = "<group>";
......@@ -1022,6 +1033,17 @@
path = MoonPhaseCell;
sourceTree = "<group>";
};
CDC62C4326C13AD100156643 /* InitialOnboarding */ = {
isa = PBXGroup;
children = (
CDC62C4426C13B9200156643 /* OnboardingPageController.swift */,
CDC62C4626C13BE300156643 /* OnboardingForecastsController.swift */,
CDC62C4826C13BFE00156643 /* OnboardingAlertsController.swift */,
CDC62C4A26C13C1700156643 /* OnboardingRadarController.swift */,
);
path = InitialOnboarding;
sourceTree = "<group>";
};
CDD0F1DC2572400200CF5017 /* UI */ = {
isa = PBXGroup;
children = (
......@@ -1255,6 +1277,7 @@
CEC8FBAD263975170001A6BF /* Onboarding */ = {
isa = PBXGroup;
children = (
CDC62C4326C13AD100156643 /* InitialOnboarding */,
CEC8FBAE2639756A0001A6BF /* OnboardingViewController.swift */,
);
path = Onboarding;
......@@ -1573,6 +1596,7 @@
CD7BF15526203E6900A30DF5 /* RadarViewController.swift in Sources */,
CD82300325D69DE400A05501 /* TodayConditionsCell.swift in Sources */,
CD32CE08260C743B00235081 /* MenuViewModel.swift in Sources */,
CDC62C4526C13B9200156643 /* OnboardingPageController.swift in Sources */,
CD866A76260F77C500E96A5C /* SettingsDetailsCoordinator.swift in Sources */,
CE0457902632B3BC00B3C19A /* NotificationsViewModel.swift in Sources */,
CE13B81A262480B3007CBD4D /* AdManager.swift in Sources */,
......@@ -1624,6 +1648,7 @@
CD9B6B1425DBCDE2001D9B80 /* GraphView.swift in Sources */,
CD866A6F260F67F200E96A5C /* SettingsDetailsViewModel.swift in Sources */,
CD71709025FA317700A63C27 /* ForecastTimePeriodView.swift in Sources */,
CDC62C4D26C13E6600156643 /* InitialOnboardingCoordinator.swift in Sources */,
CE13B812262480B3007CBD4D /* NativeAdItem.swift in Sources */,
CD37D3E5260CB05C002669D6 /* MenuFooterView.swift in Sources */,
CDE18DD825D16CB200C80ED9 /* NavigationCityButton.swift in Sources */,
......@@ -1667,12 +1692,14 @@
CD37D3FA260DF714002669D6 /* SettingsThemeCell.swift in Sources */,
CD6B303E25726960004B34B3 /* ThemeProtocol.swift in Sources */,
CD6B303B2572680C004B34B3 /* SelfSizingButton.swift in Sources */,
CDC62C4726C13BE300156643 /* OnboardingForecastsController.swift in Sources */,
CD9B6B1125DBC723001D9B80 /* CubicCurveAlgorithm.swift in Sources */,
CD8B60B4263819790055CB3F /* NotificationsViewController.swift in Sources */,
CD67617026259D220079D273 /* RadarMapLayersController.swift in Sources */,
CEC8FBAF2639756A0001A6BF /* OnboardingViewController.swift in Sources */,
CD866A65260F642600E96A5C /* SettingsDetailsViewController.swift in Sources */,
CD647D0225ED07D60034578B /* TodayViewModel.swift in Sources */,
CDC62C4926C13BFE00156643 /* OnboardingAlertsController.swift in Sources */,
CD593BD32608BC3F00C93428 /* ForecastDayCell.swift in Sources */,
CD8B60AB263819400055CB3F /* NWSAlertCellFactory.swift in Sources */,
CDAC9B8526319B0500AC1BF4 /* MapTimeControlItem.swift in Sources */,
......@@ -1695,6 +1722,7 @@
CD8B60B3263819790055CB3F /* NWSAlertCell.swift in Sources */,
CE13B81C262480B3007CBD4D /* Interstitial.swift in Sources */,
CDDE8D7C262EED3C00267931 /* MapLegendSevereView.swift in Sources */,
CDC62C4B26C13C1700156643 /* OnboardingRadarController.swift in Sources */,
CD6761882625C3360079D273 /* RadarViewModel.swift in Sources */,
CDF8F12A262089A200DB384A /* MapTimeView.swift in Sources */,
CE81A422266E289E00800EFF /* NativeAdView.swift in Sources */,
......
......@@ -80,8 +80,16 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
FirebaseApp.configure()
ConfigManager.shared.updateConfig()
let appCoordinator = AppCoordinator(window: self.window!)
appCoordinator.start()
#if !DEBUG
fatalError("This code only for Debug")
#else
let onboarding = OnboardingPageController()
window?.rootViewController = onboarding
window?.makeKeyAndVisible()
// let appCoordinator = AppCoordinator(window: self.window!)
// appCoordinator.start()
#endif
ThemeManager.setBaseTheme()
let appVersion = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String
......
//
// InitialOnboardingCoordinator.swift
// 1Weather
//
// Created by Dmitry Stepanets on 09.08.2021.
//
import UIKit
class InitialOnboardingCoordinator: Coordinator {
//Public
var childCoordinators = [Coordinator]()
var parentCoordinator: Coordinator?
//Private
private let parentViewController: UIViewController
init(parentViewController: UIViewController) {
self.parentViewController = parentViewController
}
func start() {
let onboardingController = OnboardingPageController()
parentViewController.present(onboardingController, animated: false)
}
func viewControllerDidEnd(controller: UIViewController) {
parentCoordinator?.childDidFinish(child: self)
}
}
//
// OnboardingAlertsController.swift
// 1Weather
//
// Created by Dmitry Stepanets on 09.08.2021.
//
import UIKit
class OnboardingAlertsController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .red
}
}
//
// OnboardingForecastsController.swift
// 1Weather
//
// Created by Dmitry Stepanets on 09.08.2021.
//
import UIKit
class OnboardingForecastsController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .yellow
}
}
//
// OnboardingPageController.swift
// 1Weather
//
// Created by Dmitry Stepanets on 09.08.2021.
//
import UIKit
class OnboardingPageController: UIPageViewController {
private let forecastsController = OnboardingForecastsController()
private let alertsController = OnboardingAlertsController()
private let radarController = OnboardingAlertsController()
override init(transitionStyle style: UIPageViewController.TransitionStyle,
navigationOrientation: UIPageViewController.NavigationOrientation,
options: [UIPageViewController.OptionsKey : Any]? = nil
) {
super.init(transitionStyle: .scroll,
navigationOrientation: .horizontal,
options: nil)
modalPresentationStyle = .fullScreen
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .lightGray
delegate = self
setViewControllers([forecastsController],
direction: .forward,
animated: false)
}
}
extension OnboardingPageController: UIPageViewControllerDelegate {
}
//
// OnboardingRadarController.swift
// 1Weather
//
// Created by Dmitry Stepanets on 09.08.2021.
//
import UIKit
class OnboardingRadarController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .blue
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment