diff --git a/.github/CHANGELOG.md b/.github/CHANGELOG.md index 032c0cc..75f9896 100644 --- a/.github/CHANGELOG.md +++ b/.github/CHANGELOG.md @@ -5,6 +5,17 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.2.3] - 2024-09-08 + +### Added + +- Added a `delayLaunchScreen` bool variable to turn on/off a delay to display the splash screen in the `PassThrough.swift` file. + +### Changed + +- Moved GitHub link button further down on the login screen. +- Renamed file folders. + ## [1.2.2] - 2024-08-13 ### Changed @@ -50,6 +61,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Added this changelog file :D - Initial Release of Post.e +[1.2.3]: https://github.com/scottgriv/Post.e/compare/v1.2.2...v1.2.3 [1.2.2]: https://github.com/scottgriv/Post.e/compare/v1.2.1...v1.2.2 [1.2.1]: https://github.com/scottgriv/Post.e/compare/v1.2.0...v1.2.1 [1.2.0]: https://github.com/scottgriv/Post.e/compare/v1.1.0...v1.2.0 diff --git a/mobile/ios/Post.e.xcodeproj/project.pbxproj b/mobile/ios/Post.e.xcodeproj/project.pbxproj index 766a17e..455775d 100644 --- a/mobile/ios/Post.e.xcodeproj/project.pbxproj +++ b/mobile/ios/Post.e.xcodeproj/project.pbxproj @@ -487,8 +487,8 @@ F683A5B2270A723000FA1D94 /* Post.e */, F67C4E2D28790919005A08F3 /* Post.e_Watch */, F67C4E3B2879091C005A08F3 /* Post.e_Watch WatchKit Extension */, - F68E2F0F28B0663F00B3E982 /* Playgrounds */, F67D193F28AB38FF0040727B /* Post.eTests */, + F68E2F0F28B0663F00B3E982 /* Playgrounds */, F683A593270A6FC500FA1D94 /* Products */, ); sourceTree = ""; @@ -621,6 +621,7 @@ F683A5C8270A746A00FA1D94 /* Scene Delegate */, F683A5C4270A73BF00FA1D94 /* TabBarController */, F683A5C3270A73B100FA1D94 /* NavigationController */, + F6CBFC142C8E448F00B601B3 /* Config */, F683A5CC270A752500FA1D94 /* Singletons */, F683A5EF270D3F1A00FA1D94 /* Open Source Libraries */, ); @@ -663,8 +664,6 @@ F683A5CC270A752500FA1D94 /* Singletons */ = { isa = PBXGroup; children = ( - F67D192F28A9D12F0040727B /* App Info */, - F660E90927225D93005F856A /* Constants */, F6E35929279663F900669243 /* Managers */, F6F7E225274604C500AAB77D /* Cells */, ); @@ -804,6 +803,15 @@ path = Playgrounds; sourceTree = ""; }; + F6CBFC142C8E448F00B601B3 /* Config */ = { + isa = PBXGroup; + children = ( + F67D192F28A9D12F0040727B /* App Info */, + F660E90927225D93005F856A /* Constants */, + ); + path = Config; + sourceTree = ""; + }; F6DDAA2D2787E00C0092A50C /* Follow Manager */ = { isa = PBXGroup; children = ( diff --git a/mobile/ios/Post.e.xcodeproj/project.xcworkspace/xcuserdata/scottgrivner.xcuserdatad/UserInterfaceState.xcuserstate b/mobile/ios/Post.e.xcodeproj/project.xcworkspace/xcuserdata/scottgrivner.xcuserdatad/UserInterfaceState.xcuserstate index 63416a2..efd368b 100644 Binary files a/mobile/ios/Post.e.xcodeproj/project.xcworkspace/xcuserdata/scottgrivner.xcuserdatad/UserInterfaceState.xcuserstate and b/mobile/ios/Post.e.xcodeproj/project.xcworkspace/xcuserdata/scottgrivner.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/mobile/ios/Post.e/Main Files/Base.lproj/Main.storyboard b/mobile/ios/Post.e/Main Files/Base.lproj/Main.storyboard index c0066e4..99b35bc 100644 --- a/mobile/ios/Post.e/Main Files/Base.lproj/Main.storyboard +++ b/mobile/ios/Post.e/Main Files/Base.lproj/Main.storyboard @@ -1,9 +1,9 @@ - + - + @@ -650,7 +650,7 @@ - + @@ -675,16 +675,16 @@ - + - + - + @@ -1368,7 +1368,7 @@ - + @@ -1382,7 +1382,7 @@ - + @@ -2059,25 +2059,25 @@ - + - + - + - + - + - + diff --git a/mobile/ios/Post.e/Main Files/Config/App Info/AppInfo.swift b/mobile/ios/Post.e/Main Files/Config/App Info/AppInfo.swift new file mode 100644 index 0000000..c74ad0d --- /dev/null +++ b/mobile/ios/Post.e/Main Files/Config/App Info/AppInfo.swift @@ -0,0 +1,62 @@ +// +// AppInfo.swift +// Post.e +// +// Created by Scott Grivner on 8/14/22. +// + +import Foundation + +struct AppInfo { + + // MARK: Add a delay to the launch screen to show the Post.e branded cover photo (true = add a 2 second delay, false = show the login screen as quickly as possible) + // MARK: You can adjust the delay by editing the code for this directly in the PassThrough.swift file + let delayLaunchScreen = true + + var appName : String { + return readFromInfoPlist(withKey: "CFBundleName") ?? "(unknown app name)" + } + + var version : String { + return readFromInfoPlist(withKey: "CFBundleShortVersionString") ?? "(unknown app version)" + } + + var build : String { + return readFromInfoPlist(withKey: "CFBundleVersion") ?? "(unknown build number)" + } + + var minimumOSVersion : String { + return readFromInfoPlist(withKey: "MinimumOSVersion") ?? "(unknown minimum OSVersion)" + } + + var copyrightNotice : String { + return readFromInfoPlist(withKey: "NSHumanReadableCopyright") ?? "(unknown copyright notice)" + } + + var bundleIdentifier : String { + return readFromInfoPlist(withKey: "CFBundleIdentifier") ?? "(unknown bundle identifier)" + } + + var aboutDeveloper : String { return "Scott Grivner" } + + var aboutContactEmail : String { return "scott.grivner@gmail.com" } + + var aboutContactWebsite : String { return "scottgrivner.dev" } + + var currentYear : String { + let now = Date() + let dateFormatter = DateFormatter() + dateFormatter.dateFormat = "yyyy" + let year = dateFormatter.string(from: now) + + return year + } + + // lets hold a reference to the Info.plist of the app as Dictionary + private let infoPlistDictionary = Bundle.main.infoDictionary + + /// Retrieves and returns associated values (of Type String) from info.Plist of the app. + private func readFromInfoPlist(withKey key: String) -> String? { + return infoPlistDictionary?[key] as? String + } +} diff --git a/mobile/ios/Post.e/Main Files/Singletons/Constants/Constants.h b/mobile/ios/Post.e/Main Files/Config/Constants/Constants.h similarity index 100% rename from mobile/ios/Post.e/Main Files/Singletons/Constants/Constants.h rename to mobile/ios/Post.e/Main Files/Config/Constants/Constants.h diff --git a/mobile/ios/Post.e/Main Files/Singletons/Constants/Constants.m b/mobile/ios/Post.e/Main Files/Config/Constants/Constants.m similarity index 100% rename from mobile/ios/Post.e/Main Files/Singletons/Constants/Constants.m rename to mobile/ios/Post.e/Main Files/Config/Constants/Constants.m diff --git a/mobile/ios/Post.e/Main Files/Singletons/App Info/AppInfo.swift b/mobile/ios/Post.e/Main Files/Singletons/App Info/AppInfo.swift deleted file mode 100644 index deb4019..0000000 --- a/mobile/ios/Post.e/Main Files/Singletons/App Info/AppInfo.swift +++ /dev/null @@ -1,58 +0,0 @@ -// -// AppInfo.swift -// Post.e -// -// Created by Scott Grivner on 8/14/22. -// - -import Foundation - -struct AppInfo { - -var appName : String { - return readFromInfoPlist(withKey: "CFBundleName") ?? "(unknown app name)" -} - -var version : String { - return readFromInfoPlist(withKey: "CFBundleShortVersionString") ?? "(unknown app version)" -} - -var build : String { - return readFromInfoPlist(withKey: "CFBundleVersion") ?? "(unknown build number)" -} - -var minimumOSVersion : String { - return readFromInfoPlist(withKey: "MinimumOSVersion") ?? "(unknown minimum OSVersion)" -} - -var copyrightNotice : String { - return readFromInfoPlist(withKey: "NSHumanReadableCopyright") ?? "(unknown copyright notice)" -} - -var bundleIdentifier : String { - return readFromInfoPlist(withKey: "CFBundleIdentifier") ?? "(unknown bundle identifier)" -} - -var aboutDeveloper : String { return "Scott Grivner" } - -var aboutContactEmail : String { return "scott.grivner@gmail.com" } - -var aboutContactWebsite : String { return "scottgrivner.dev" } - -var currentYear : String { - let now = Date() - let dateFormatter = DateFormatter() - dateFormatter.dateFormat = "yyyy" - let year = dateFormatter.string(from: now) - - return year -} - -// lets hold a reference to the Info.plist of the app as Dictionary -private let infoPlistDictionary = Bundle.main.infoDictionary - -/// Retrieves and returns associated values (of Type String) from info.Plist of the app. -private func readFromInfoPlist(withKey key: String) -> String? { - return infoPlistDictionary?[key] as? String - } -} diff --git a/mobile/ios/Post.e/Screens/Pass Through/PassThrough.swift b/mobile/ios/Post.e/Screens/Pass Through/PassThrough.swift index c691ff3..9852857 100644 --- a/mobile/ios/Post.e/Screens/Pass Through/PassThrough.swift +++ b/mobile/ios/Post.e/Screens/Pass Through/PassThrough.swift @@ -139,7 +139,15 @@ class PassThrough: UIViewController, WCSessionDelegate { } else { - self.performSegue(withIdentifier: "PassThrough_to_Login", sender: self) + var delaySeconds = 0.0 + + if (instanceOfAppInfo.delayLaunchScreen) { + delaySeconds = 2.0 + } + + DispatchQueue.main.asyncAfter(deadline: .now() + delaySeconds) { // 2 seconds delay to show the Launch Screen + self.performSegue(withIdentifier: "PassThrough_to_Login", sender: self) + } }