Skip to content

Commit fcbba11

Browse files
committed
Handle cancelling media uploads from Live Activity UI
1 parent 1e19fd0 commit fcbba11

1 file changed

Lines changed: 15 additions & 1 deletion

File tree

WordPress/Classes/ViewRelated/Aztec/Media/MediaUploadBackgroundTracker.swift

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ private actor ConcreteMediaUploadBackgroundTracker: MediaUploadBackgroundTracker
106106
task.progress.totalUnitCount = 100
107107
task.expirationHandler = { [weak self] in
108108
Task {
109-
await self?.setTaskCompleted(success: false)
109+
await self?.handleExpiration()
110110
}
111111
}
112112

@@ -151,6 +151,20 @@ private actor ConcreteMediaUploadBackgroundTracker: MediaUploadBackgroundTracker
151151
self.state = .accepted(accepted)
152152
}
153153

154+
private func handleExpiration() {
155+
if case let .accepted(accepted) = state {
156+
Task { @MainActor in
157+
let context = ContextManager.shared.mainContext
158+
for item in accepted.items {
159+
guard let media = try? context.existingObject(with: item.media) else { continue }
160+
MediaCoordinator.shared.cancelUpload(of: media)
161+
}
162+
}
163+
}
164+
165+
setTaskCompleted(success: false)
166+
}
167+
154168
private func handleProgressUpdates() {
155169
guard case let .accepted(accepted) = state else { return }
156170

0 commit comments

Comments
 (0)