Make AccountManager and ArticleThemesManager self-initing.

This commit is contained in:
Brent Simmons
2025-02-01 19:37:59 -08:00
parent 8a123a0734
commit e9fc4c09ed
5 changed files with 16 additions and 23 deletions

View File

@@ -60,14 +60,8 @@ final class AppDelegate: UIResponder, UIApplicationDelegate, UNUserNotificationC
override init() {
super.init()
let documentFolder = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first!
let documentAccountsFolder = documentFolder.appendingPathComponent("Accounts").absoluteString
let documentAccountsFolderPath = String(documentAccountsFolder.suffix(from: documentAccountsFolder.index(documentAccountsFolder.startIndex, offsetBy: 7)))
AccountManager.shared = AccountManager(accountsFolder: documentAccountsFolderPath)
let documentThemesFolder = documentFolder.appendingPathComponent("Themes").absoluteString
let documentThemesFolderPath = String(documentThemesFolder.suffix(from: documentAccountsFolder.index(documentThemesFolder.startIndex, offsetBy: 7)))
ArticleThemesManager.shared = ArticleThemesManager(folderPath: documentThemesFolderPath)
_ = AccountManager.shared
_ = ArticleThemesManager.shared
NotificationCenter.default.addObserver(self, selector: #selector(unreadCountDidChange(_:)), name: .UnreadCountDidChange, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(accountRefreshDidFinish(_:)), name: .AccountRefreshDidFinish, object: nil)
@@ -293,7 +287,7 @@ private extension AppDelegate {
func updateUserInterfaceStyle() {
assert(Thread.isMainThread)
guard let window = self.window else {
guard let window else {
// Could be nil legitimately  this can get called before window is set up.
return
}