From 09c09d5ea9ebf2857945c6e0acdee08af3515af1 Mon Sep 17 00:00:00 2001 From: Thomas Ricouard Date: Thu, 19 Jan 2023 11:58:58 +0100 Subject: [PATCH] Composer: Trim attachement characters --- .../Status/Editor/StatusEditorViewModel.swift | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/Packages/Status/Sources/Status/Editor/StatusEditorViewModel.swift b/Packages/Status/Sources/Status/Editor/StatusEditorViewModel.swift index b7db4603..670d83a0 100644 --- a/Packages/Status/Sources/Status/Editor/StatusEditorViewModel.swift +++ b/Packages/Status/Sources/Status/Editor/StatusEditorViewModel.swift @@ -245,18 +245,18 @@ public class StatusEditorViewModel: ObservableObject { range: NSRange(location: range.location, length: range.length)) } - var attachmentsToRemove: [NSRange] = [] - statusText.enumerateAttribute(.attachment, in: range) { attachment, _, _ in + var mediaAdded: Bool = false + statusText.enumerateAttribute(.attachment, in: range) { attachment, range, _ in if let attachment = attachment as? NSTextAttachment, let image = attachment.image { - attachmentsToRemove.append(range) mediasImages.append(.init(image: image, mediaAttachment: nil, error: nil)) + statusText.removeAttribute(.attachment, range: range) + statusText.mutableString.deleteCharacters(in: range) + mediaAdded = true } } - if !attachmentsToRemove.isEmpty { + + if mediaAdded { processMediasToUpload() - for range in attachmentsToRemove { - statusText.removeAttribute(.attachment, range: range) - } } } catch {} }