Add media upload preview cropping capability for images (#5575)

Start using [Mantis](https://github.com/guoyingtao/Mantis) to crop and rotate images
before upload.
This commit is contained in:
Stefan Ceriu
2026-05-12 17:04:08 +03:00
committed by GitHub
parent d60f5d6efb
commit 212ac17d0b
8 changed files with 192 additions and 28 deletions
@@ -88,6 +88,22 @@ class MediaUploadPreviewScreenViewModel: MediaUploadPreviewScreenViewModelType,
case .cancel:
requestHandle?.cancel()
actionsSubject.send(.dismiss)
case .editedMedia(let image, let index):
guard mediaURLs.indices.contains(index),
let data = image.jpegData(compressionQuality: 1.0) else {
return
}
do {
try data.write(to: mediaURLs[index], options: .atomic)
state.mediaEditVersion += 1
processingTask.cancel()
processingTask = Self.processMedia(at: mediaURLs, preprocessor: mediaUploadingPreprocessor, clientProxy: clientProxy)
} catch {
MXLog.error("Failed writing cropped image with error: \(error)")
}
}
}