mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-05-03 23:15:44 +01:00
Use original message timestamp for saved attachment MediaStore metadata.
Fixes #14584
This commit is contained in:
committed by
Cody Henthorne
parent
66f69854cf
commit
237ac9f94a
@@ -68,7 +68,7 @@ object SaveAttachmentUtil {
|
||||
try {
|
||||
val contentType: String = MediaUtil.getCorrectedMimeType(attachment.contentType)!!
|
||||
val fileName: String = sanitizeOutputFileName(attachment.fileName ?: generateOutputFileName(contentType, attachment.date))
|
||||
val result: CreateMediaUriResult = createMediaUri(getMediaStoreContentUriForType(contentType), contentType, fileName, nameCache)
|
||||
val result: CreateMediaUriResult = createMediaUri(getMediaStoreContentUriForType(contentType), contentType, fileName, attachment.date, nameCache)
|
||||
val updateValues = ContentValues()
|
||||
val mediaUri = result.mediaUri ?: return@withContext SaveAttachmentResult.ErrorSavingFile
|
||||
val inputStream = PartAuthority.getAttachmentStream(AppDependencies.application, attachment.uri) ?: return@withContext SaveAttachmentResult.ErrorSavingFile
|
||||
@@ -132,7 +132,7 @@ object SaveAttachmentUtil {
|
||||
}
|
||||
|
||||
@Throws(IOException::class)
|
||||
private fun createMediaUri(outputUri: Uri, contentType: String, fileName: String, nameCache: BatchOperationNameCache): CreateMediaUriResult {
|
||||
private fun createMediaUri(outputUri: Uri, contentType: String, fileName: String, timestamp: Long, nameCache: BatchOperationNameCache): CreateMediaUriResult {
|
||||
val (base, extension) = getFileNameParts(fileName)
|
||||
var mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtension(extension)
|
||||
|
||||
@@ -153,8 +153,9 @@ object SaveAttachmentUtil {
|
||||
val contentValues = contentValuesOf(
|
||||
MediaStore.MediaColumns.DISPLAY_NAME to fileName,
|
||||
MediaStore.MediaColumns.MIME_TYPE to mimeType,
|
||||
MediaStore.MediaColumns.DATE_ADDED to TimeUnit.MILLISECONDS.toSeconds(System.currentTimeMillis()),
|
||||
MediaStore.MediaColumns.DATE_MODIFIED to TimeUnit.MILLISECONDS.toSeconds(System.currentTimeMillis())
|
||||
MediaStore.MediaColumns.DATE_ADDED to TimeUnit.MILLISECONDS.toSeconds(timestamp),
|
||||
MediaStore.MediaColumns.DATE_MODIFIED to TimeUnit.MILLISECONDS.toSeconds(timestamp),
|
||||
MediaStore.MediaColumns.DATE_TAKEN to timestamp
|
||||
)
|
||||
|
||||
if (Build.VERSION.SDK_INT > 28) {
|
||||
|
||||
Reference in New Issue
Block a user