Don't compress images sent through the Files attachment picker (#6755)

* Don't compress images sent through the Files attachment picker

Images and videos picked through the "Attachment" picker are now
uploaded without re-encoding, regardless of the "Optimize media quality"
setting. The gallery and camera pickers keep the existing behaviour,
matching what Element Web/Desktop and most other messengers do.

Fixes #6365

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Make sure we select the right video preset for sending as file

Wait for the video size estimations to be calculated before preprocessing the video file

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Jorge Martín <jorgem@element.io>
This commit is contained in:
cizra 2026-05-20 15:19:08 +00:00 committed by GitHub
parent 933b18f6c2
commit a33d717aa0
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
12 changed files with 357 additions and 30 deletions

View file

@ -31,6 +31,10 @@ class FakeMediaPreProcessor(
var cleanUpCallCount = 0
private set
/** The [MediaOptimizationConfig] passed to the most recent [process] call, or `null` if it was never called. */
var lastMediaOptimizationConfig: MediaOptimizationConfig? = null
private set
private var result: Result<MediaUploadInfo> = Result.success(
MediaUploadInfo.AnyFile(
File("test"),
@ -51,6 +55,7 @@ class FakeMediaPreProcessor(
): Result<MediaUploadInfo> = simulateLongTask {
processLatch?.await()
processCallCount++
lastMediaOptimizationConfig = mediaOptimizationConfig
result
}