Expose sliding sync proxy URL on the server selection screen; make app more resilient to slidinc sync configuration errors, remove fatal errors

This commit is contained in:
Stefan Ceriu
2022-11-17 09:33:39 +02:00
committed by Stefan Ceriu
parent 2fd0491a18
commit 276daf0355
10 changed files with 88 additions and 55 deletions
+10 -1
View File
@@ -25,13 +25,17 @@ final class ElementSettings: ObservableObject {
case timelineStyle
case enableAnalytics
case isIdentifiedForAnalytics
case slidingSyncProxyBaseURLString
}
static let shared = ElementSettings()
/// UserDefaults to be used on reads and writes.
static var store: UserDefaults {
.standard
guard let userDefaults = UserDefaults(suiteName: ElementInfoPlist.appGroupIdentifier) else {
fatalError("Fail to load shared UserDefaults")
}
return userDefaults
}
private init() {
@@ -59,4 +63,9 @@ final class ElementSettings: ObservableObject {
@AppStorage(UserDefaultsKeys.timelineStyle.rawValue, store: store)
var timelineStyle = BuildSettings.defaultRoomTimelineStyle
// MARK: - Client
@AppStorage(UserDefaultsKeys.slidingSyncProxyBaseURLString.rawValue, store: store)
var slidingSyncProxyBaseURLString = BuildSettings.defaultSlidingSyncProxyBaseURLString
}