Remove unnecessary Task.detached NotificationCenter workaround
This commit is contained in:
parent
eef251790f
commit
1a61fe0b1a
@ -331,54 +331,46 @@ class BackupSettingsViewController:
|
||||
return true
|
||||
}
|
||||
},
|
||||
NotificationCenter.default.startTaskTrackingNotifications(
|
||||
named: .OWSApplicationDidBecomeActive,
|
||||
onNotification: { [weak self] in
|
||||
Task { [weak self] in
|
||||
for await _ in NotificationCenter.default.notifications(named: .OWSApplicationDidBecomeActive) {
|
||||
self?.loadBackupSubscription()
|
||||
},
|
||||
),
|
||||
NotificationCenter.default.startTaskTrackingNotifications(
|
||||
named: .backupPlanChanged,
|
||||
onNotification: { [weak self] in
|
||||
}
|
||||
},
|
||||
Task { [weak self] in
|
||||
for await _ in NotificationCenter.default.notifications(named: .backupPlanChanged) {
|
||||
self?._backupPlanDidChange()
|
||||
},
|
||||
),
|
||||
NotificationCenter.default.startTaskTrackingNotifications(
|
||||
named: .lastBackupDetailsDidChange,
|
||||
onNotification: { [weak self] in
|
||||
}
|
||||
},
|
||||
Task { [weak self] in
|
||||
for await _ in NotificationCenter.default.notifications(named: .lastBackupDetailsDidChange) {
|
||||
self?._lastBackupDetailsDidChange()
|
||||
},
|
||||
),
|
||||
NotificationCenter.default.startTaskTrackingNotifications(
|
||||
named: .shouldAllowBackupUploadsOnCellularChanged,
|
||||
onNotification: { [weak self] in
|
||||
}
|
||||
},
|
||||
Task { [weak self] in
|
||||
for await _ in NotificationCenter.default.notifications(named: .shouldAllowBackupUploadsOnCellularChanged) {
|
||||
self?._shouldAllowBackupUploadsOnCellularDidChange()
|
||||
},
|
||||
),
|
||||
NotificationCenter.default.startTaskTrackingNotifications(
|
||||
named: .backupSubscriptionAlreadyRedeemedDidChange,
|
||||
onNotification: { [weak self] in
|
||||
}
|
||||
},
|
||||
Task { [weak self] in
|
||||
for await _ in NotificationCenter.default.notifications(named: .backupSubscriptionAlreadyRedeemedDidChange) {
|
||||
self?._backupSubscriptionAlreadyRedeemedDidChange()
|
||||
},
|
||||
),
|
||||
NotificationCenter.default.startTaskTrackingNotifications(
|
||||
named: .backupIAPNotFoundLocallyDidChange,
|
||||
onNotification: { [weak self] in
|
||||
}
|
||||
},
|
||||
Task { [weak self] in
|
||||
for await _ in NotificationCenter.default.notifications(named: .backupIAPNotFoundLocallyDidChange) {
|
||||
self?._backupIAPNotFoundLocallyDidChange()
|
||||
},
|
||||
),
|
||||
NotificationCenter.default.startTaskTrackingNotifications(
|
||||
named: .hasConsumedMediaTierCapacityStatusDidChange,
|
||||
onNotification: { [weak self] in
|
||||
}
|
||||
},
|
||||
Task { [weak self] in
|
||||
for await _ in NotificationCenter.default.notifications(named: .hasConsumedMediaTierCapacityStatusDidChange) {
|
||||
self?._hasConsumedMediaTierCapacityDidChange()
|
||||
},
|
||||
),
|
||||
NotificationCenter.default.startTaskTrackingNotifications(
|
||||
named: UIApplication.backgroundRefreshStatusDidChangeNotification,
|
||||
onNotification: { [weak self] in
|
||||
}
|
||||
},
|
||||
Task { [weak self] in
|
||||
for await _ in NotificationCenter.default.notifications(named: UIApplication.backgroundRefreshStatusDidChangeNotification) {
|
||||
self?._isBackgroundAppRefreshDisabledDidChange()
|
||||
},
|
||||
),
|
||||
}
|
||||
},
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@ -198,9 +198,8 @@ class CLVBackupExportProgressView: BackupExportProgressView.Delegate {
|
||||
}
|
||||
}
|
||||
},
|
||||
NotificationCenter.default.startTaskTrackingNotifications(
|
||||
named: .lastBackupDetailsDidChange,
|
||||
onNotification: { [weak self] in
|
||||
Task { @MainActor [weak self] in
|
||||
for await _ in NotificationCenter.default.notifications(named: .lastBackupDetailsDidChange) {
|
||||
guard let self else { return }
|
||||
|
||||
let lastBackupDetails = db.read { tx in
|
||||
@ -211,11 +210,10 @@ class CLVBackupExportProgressView: BackupExportProgressView.Delegate {
|
||||
_state.lastBackupDetails = lastBackupDetails
|
||||
self.setViewStateForState(state: &_state)
|
||||
}
|
||||
},
|
||||
),
|
||||
NotificationCenter.default.startTaskTrackingNotifications(
|
||||
named: .isHiddenDidChange,
|
||||
onNotification: { [weak self] in
|
||||
}
|
||||
},
|
||||
Task { @MainActor [weak self] in
|
||||
for await _ in NotificationCenter.default.notifications(named: .isHiddenDidChange) {
|
||||
guard let self else { return }
|
||||
|
||||
let isHidden = db.read { tx in
|
||||
@ -226,8 +224,8 @@ class CLVBackupExportProgressView: BackupExportProgressView.Delegate {
|
||||
_state.isHidden = isHidden
|
||||
self.setViewStateForState(state: &_state)
|
||||
}
|
||||
},
|
||||
),
|
||||
}
|
||||
},
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@ -48,20 +48,3 @@ extension NotificationCenter {
|
||||
removeObserver(observer.wrapped)
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: -
|
||||
|
||||
extension NotificationCenter {
|
||||
public func startTaskTrackingNotifications(
|
||||
named name: Notification.Name,
|
||||
onNotification: @MainActor @escaping () -> Void,
|
||||
) -> Task<Void, Never> {
|
||||
return Task.detached {
|
||||
for await _ in NotificationCenter.default.notifications(named: name) {
|
||||
await MainActor.run {
|
||||
onNotification()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user