diff --git a/ElementX/Sources/Mocks/Generated/GeneratedMocks.swift b/ElementX/Sources/Mocks/Generated/GeneratedMocks.swift index 8dd751d8f..7158bcbfb 100644 --- a/ElementX/Sources/Mocks/Generated/GeneratedMocks.swift +++ b/ElementX/Sources/Mocks/Generated/GeneratedMocks.swift @@ -1011,9 +1011,9 @@ class RoomProxyMock: RoomProxyProtocol { return sendImageUrlThumbnailURLImageInfoProgressSubjectRequestHandleCallsCount > 0 } var sendImageUrlThumbnailURLImageInfoProgressSubjectRequestHandleReturnValue: Result! - var sendImageUrlThumbnailURLImageInfoProgressSubjectRequestHandleClosure: ((URL, URL, ImageInfo, CurrentValueSubject?, (SendAttachmentJoinHandleProtocol) -> Void) async -> Result)? + var sendImageUrlThumbnailURLImageInfoProgressSubjectRequestHandleClosure: ((URL, URL, ImageInfo, CurrentValueSubject?, @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result)? - func sendImage(url: URL, thumbnailURL: URL, imageInfo: ImageInfo, progressSubject: CurrentValueSubject?, requestHandle: (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { + func sendImage(url: URL, thumbnailURL: URL, imageInfo: ImageInfo, progressSubject: CurrentValueSubject?, requestHandle: @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { sendImageUrlThumbnailURLImageInfoProgressSubjectRequestHandleCallsCount += 1 if let sendImageUrlThumbnailURLImageInfoProgressSubjectRequestHandleClosure = sendImageUrlThumbnailURLImageInfoProgressSubjectRequestHandleClosure { return await sendImageUrlThumbnailURLImageInfoProgressSubjectRequestHandleClosure(url, thumbnailURL, imageInfo, progressSubject, requestHandle) @@ -1028,9 +1028,9 @@ class RoomProxyMock: RoomProxyProtocol { return sendVideoUrlThumbnailURLVideoInfoProgressSubjectRequestHandleCallsCount > 0 } var sendVideoUrlThumbnailURLVideoInfoProgressSubjectRequestHandleReturnValue: Result! - var sendVideoUrlThumbnailURLVideoInfoProgressSubjectRequestHandleClosure: ((URL, URL, VideoInfo, CurrentValueSubject?, (SendAttachmentJoinHandleProtocol) -> Void) async -> Result)? + var sendVideoUrlThumbnailURLVideoInfoProgressSubjectRequestHandleClosure: ((URL, URL, VideoInfo, CurrentValueSubject?, @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result)? - func sendVideo(url: URL, thumbnailURL: URL, videoInfo: VideoInfo, progressSubject: CurrentValueSubject?, requestHandle: (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { + func sendVideo(url: URL, thumbnailURL: URL, videoInfo: VideoInfo, progressSubject: CurrentValueSubject?, requestHandle: @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { sendVideoUrlThumbnailURLVideoInfoProgressSubjectRequestHandleCallsCount += 1 if let sendVideoUrlThumbnailURLVideoInfoProgressSubjectRequestHandleClosure = sendVideoUrlThumbnailURLVideoInfoProgressSubjectRequestHandleClosure { return await sendVideoUrlThumbnailURLVideoInfoProgressSubjectRequestHandleClosure(url, thumbnailURL, videoInfo, progressSubject, requestHandle) @@ -1045,9 +1045,9 @@ class RoomProxyMock: RoomProxyProtocol { return sendAudioUrlAudioInfoProgressSubjectRequestHandleCallsCount > 0 } var sendAudioUrlAudioInfoProgressSubjectRequestHandleReturnValue: Result! - var sendAudioUrlAudioInfoProgressSubjectRequestHandleClosure: ((URL, AudioInfo, CurrentValueSubject?, (SendAttachmentJoinHandleProtocol) -> Void) async -> Result)? + var sendAudioUrlAudioInfoProgressSubjectRequestHandleClosure: ((URL, AudioInfo, CurrentValueSubject?, @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result)? - func sendAudio(url: URL, audioInfo: AudioInfo, progressSubject: CurrentValueSubject?, requestHandle: (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { + func sendAudio(url: URL, audioInfo: AudioInfo, progressSubject: CurrentValueSubject?, requestHandle: @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { sendAudioUrlAudioInfoProgressSubjectRequestHandleCallsCount += 1 if let sendAudioUrlAudioInfoProgressSubjectRequestHandleClosure = sendAudioUrlAudioInfoProgressSubjectRequestHandleClosure { return await sendAudioUrlAudioInfoProgressSubjectRequestHandleClosure(url, audioInfo, progressSubject, requestHandle) @@ -1062,9 +1062,9 @@ class RoomProxyMock: RoomProxyProtocol { return sendFileUrlFileInfoProgressSubjectRequestHandleCallsCount > 0 } var sendFileUrlFileInfoProgressSubjectRequestHandleReturnValue: Result! - var sendFileUrlFileInfoProgressSubjectRequestHandleClosure: ((URL, FileInfo, CurrentValueSubject?, (SendAttachmentJoinHandleProtocol) -> Void) async -> Result)? + var sendFileUrlFileInfoProgressSubjectRequestHandleClosure: ((URL, FileInfo, CurrentValueSubject?, @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result)? - func sendFile(url: URL, fileInfo: FileInfo, progressSubject: CurrentValueSubject?, requestHandle: (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { + func sendFile(url: URL, fileInfo: FileInfo, progressSubject: CurrentValueSubject?, requestHandle: @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { sendFileUrlFileInfoProgressSubjectRequestHandleCallsCount += 1 if let sendFileUrlFileInfoProgressSubjectRequestHandleClosure = sendFileUrlFileInfoProgressSubjectRequestHandleClosure { return await sendFileUrlFileInfoProgressSubjectRequestHandleClosure(url, fileInfo, progressSubject, requestHandle) diff --git a/ElementX/Sources/Services/Room/RoomProxy.swift b/ElementX/Sources/Services/Room/RoomProxy.swift index 3386532e2..ff251094c 100644 --- a/ElementX/Sources/Services/Room/RoomProxy.swift +++ b/ElementX/Sources/Services/Room/RoomProxy.swift @@ -313,7 +313,7 @@ class RoomProxy: RoomProxyProtocol { thumbnailURL: URL, imageInfo: ImageInfo, progressSubject: CurrentValueSubject?, - requestHandle: (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { + requestHandle: @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { sendMessageBackgroundTask = await backgroundTaskService.startBackgroundTask(withName: backgroundTaskName, isReusable: true) defer { sendMessageBackgroundTask?.stop() @@ -323,7 +323,7 @@ class RoomProxy: RoomProxyProtocol { progressSubject?.send(progress) }) - requestHandle(handle) + await requestHandle(handle) do { try await handle.join() @@ -338,7 +338,7 @@ class RoomProxy: RoomProxyProtocol { thumbnailURL: URL, videoInfo: VideoInfo, progressSubject: CurrentValueSubject?, - requestHandle: (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { + requestHandle: @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { sendMessageBackgroundTask = await backgroundTaskService.startBackgroundTask(withName: backgroundTaskName, isReusable: true) defer { sendMessageBackgroundTask?.stop() @@ -348,7 +348,7 @@ class RoomProxy: RoomProxyProtocol { progressSubject?.send(progress) }) - requestHandle(handle) + await requestHandle(handle) do { try await handle.join() @@ -362,7 +362,7 @@ class RoomProxy: RoomProxyProtocol { func sendAudio(url: URL, audioInfo: AudioInfo, progressSubject: CurrentValueSubject?, - requestHandle: (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { + requestHandle: @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { sendMessageBackgroundTask = await backgroundTaskService.startBackgroundTask(withName: backgroundTaskName, isReusable: true) defer { sendMessageBackgroundTask?.stop() @@ -372,7 +372,7 @@ class RoomProxy: RoomProxyProtocol { progressSubject?.send(progress) }) - requestHandle(handle) + await requestHandle(handle) do { try await handle.join() @@ -386,7 +386,7 @@ class RoomProxy: RoomProxyProtocol { func sendFile(url: URL, fileInfo: FileInfo, progressSubject: CurrentValueSubject?, - requestHandle: (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { + requestHandle: @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result { sendMessageBackgroundTask = await backgroundTaskService.startBackgroundTask(withName: backgroundTaskName, isReusable: true) defer { sendMessageBackgroundTask?.stop() @@ -396,7 +396,7 @@ class RoomProxy: RoomProxyProtocol { progressSubject?.send(progress) }) - requestHandle(handle) + await requestHandle(handle) do { try await handle.join() diff --git a/ElementX/Sources/Services/Room/RoomProxyProtocol.swift b/ElementX/Sources/Services/Room/RoomProxyProtocol.swift index d16cd1e6d..3778d33c2 100644 --- a/ElementX/Sources/Services/Room/RoomProxyProtocol.swift +++ b/ElementX/Sources/Services/Room/RoomProxyProtocol.swift @@ -103,23 +103,23 @@ protocol RoomProxyProtocol { thumbnailURL: URL, imageInfo: ImageInfo, progressSubject: CurrentValueSubject?, - requestHandle: (SendAttachmentJoinHandleProtocol) -> Void) async -> Result + requestHandle: @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result func sendVideo(url: URL, thumbnailURL: URL, videoInfo: VideoInfo, progressSubject: CurrentValueSubject?, - requestHandle: (SendAttachmentJoinHandleProtocol) -> Void) async -> Result + requestHandle: @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result func sendAudio(url: URL, audioInfo: AudioInfo, progressSubject: CurrentValueSubject?, - requestHandle: (SendAttachmentJoinHandleProtocol) -> Void) async -> Result + requestHandle: @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result func sendFile(url: URL, fileInfo: FileInfo, progressSubject: CurrentValueSubject?, - requestHandle: (SendAttachmentJoinHandleProtocol) -> Void) async -> Result + requestHandle: @MainActor (SendAttachmentJoinHandleProtocol) -> Void) async -> Result func sendLocation(body: String, geoURI: GeoURI,