diff --git a/ElementX/Sources/Other/Extensions/Observable.swift b/ElementX/Sources/Other/Extensions/Observable.swift index 248a09a02..1b91cc0d6 100644 --- a/ElementX/Sources/Other/Extensions/Observable.swift +++ b/ElementX/Sources/Other/Extensions/Observable.swift @@ -20,8 +20,8 @@ extension Observable { let value = withObservationTracking { self[keyPath: property] } onChange: { - // Dispatch the update as this is willSet not didSet. - DispatchQueue.main.async { + // Handle the update on the next run loop as this is willSet not didSet. + Task { guard isActive else { return } observe() }