Move any visible account settings into AccountSettings. (#6308)

* Remove the now unused setting to disable in-app notifications.

* Move visible account settings into AccountSettings.

Have ignored enableNotifications for now as that will require reworking the NotificationManager.

* Allow different sounds to be selected for each account.

* Move defaultNotificationTone into AccountSettings.
This commit is contained in:
Doug
2026-10-13 15:21:13 +01:00
committed by GitHub
parent 011087baf5
commit ac29354b08
37 changed files with 240 additions and 151 deletions
+3 -3
View File
@@ -28,9 +28,6 @@ final nonisolated class AppHooks: AppHooksProtocol {
@AppHook(default: DefaultOAuthPresenterHook())
var oAuthPresenterHook: OAuthPresenterHookProtocol
@AppHook(default: DefaultUserSessionHook())
var userSessionHook: UserSessionHookProtocol
@AppHook(default: DefaultRoomScreenHook())
var roomScreenHook: RoomScreenHookProtocol
@@ -64,6 +61,9 @@ final nonisolated class AppHooks: AppHooksProtocol {
@AppHook(default: DefaultRemoteSettingsHook())
var remoteSettingsHook: RemoteSettingsHookProtocol
@AppHook(default: DefaultUserSessionHook())
var userSessionHook: UserSessionHookProtocol
}
nonisolated protocol AppHooksProtocol: Sendable {
@@ -8,9 +8,19 @@
import MatrixRustSDK
nonisolated protocol UserSessionHookProtocol: Sendable {
#if IS_MAIN_APP
func configure(with userSession: UserSessionProtocol?) async
#endif
func configure(_ userSettings: UserSettings, forHomeserver homeserver: String) -> UserSettings
}
nonisolated struct DefaultUserSessionHook: UserSessionHookProtocol {
#if IS_MAIN_APP
func configure(with userSession: UserSessionProtocol?) async { }
#endif
func configure(_ userSettings: UserSettings, forHomeserver homeserver: String) -> UserSettings {
userSettings
}
}