From 4fc5166815b7fcf2ab0ac070e9a8a3f26ba491b3 Mon Sep 17 00:00:00 2001 From: davotoula Date: Wed, 18 Mar 2026 10:25:55 +0100 Subject: [PATCH] feat: propagate StrippingResult through UploadOrchestrator Co-Authored-By: Claude Opus 4.6 --- .../amethyst/service/uploads/UploadOrchestrator.kt | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/amethyst/src/main/java/com/vitorpamplona/amethyst/service/uploads/UploadOrchestrator.kt b/amethyst/src/main/java/com/vitorpamplona/amethyst/service/uploads/UploadOrchestrator.kt index 06f54cb0e..ee9fa4ad0 100644 --- a/amethyst/src/main/java/com/vitorpamplona/amethyst/service/uploads/UploadOrchestrator.kt +++ b/amethyst/src/main/java/com/vitorpamplona/amethyst/service/uploads/UploadOrchestrator.kt @@ -298,13 +298,13 @@ class UploadOrchestrator { stripMetadata: Boolean, compressionQuality: CompressorQuality, context: Context, - ): Uri { - if (!stripMetadata) return uri + ): StrippingResult { + if (!stripMetadata) return StrippingResult(uri, false) // Video compression already strips metadata; only strip manually when uncompressed if (mimeType?.startsWith("video/", ignoreCase = true) == true && compressionQuality != CompressorQuality.UNCOMPRESSED ) { - return uri + return StrippingResult(uri, true) // compression will handle it } return MetadataStripper().strip(uri, mimeType, context.applicationContext) } @@ -321,8 +321,8 @@ class UploadOrchestrator { useH265: Boolean = false, stripMetadata: Boolean = true, ): UploadingFinalState { - val stripped = stripMetadataIfNeeded(uri, mimeType, stripMetadata, compressionQuality, context) - val compressed = compressIfNeeded(stripped, mimeType, compressionQuality, context, useH265) + val strippingResult = stripMetadataIfNeeded(uri, mimeType, stripMetadata, compressionQuality, context) + val compressed = compressIfNeeded(strippingResult.uri, mimeType, compressionQuality, context, useH265) return when (server.type) { ServerType.NIP95 -> uploadNIP95(compressed.uri, compressed.contentType, null, null, context) @@ -344,8 +344,8 @@ class UploadOrchestrator { useH265: Boolean = false, stripMetadata: Boolean = true, ): UploadingFinalState { - val stripped = stripMetadataIfNeeded(uri, mimeType, stripMetadata, compressionQuality, context) - val compressed = compressIfNeeded(stripped, mimeType, compressionQuality, context, useH265) + val strippingResult = stripMetadataIfNeeded(uri, mimeType, stripMetadata, compressionQuality, context) + val compressed = compressIfNeeded(strippingResult.uri, mimeType, compressionQuality, context, useH265) val encrypted = EncryptFiles().encryptFile(context, compressed.uri, encrypt) return when (server.type) {