From 982e26093dc7c859c16a44a7074b126a1ef9a369 Mon Sep 17 00:00:00 2001 From: Jens Zalzala Date: Mon, 20 Apr 2026 07:12:08 -0500 Subject: [PATCH 1/2] Hide filenames for media in chat. Signed-off-by: Jens Zalzala --- .../main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt b/app/src/main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt index 82e5f41b68..88cae22b06 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt @@ -69,7 +69,13 @@ fun MediaMessage( val fileParameters = remember { FileParameters(message.messageParameters as HashMap>?) } - val captionText = message.message.takeUnless { it == FILE_PLACEHOLDER_MESSAGE } + val hasExplicitCaption = message.plainMessage != FILE_PLACEHOLDER_MESSAGE + val hasPreview = !typeContent.previewUrl.isNullOrEmpty() + val captionText = when { + hasExplicitCaption -> message.message + !hasPreview -> message.message + else -> null + } val hasCaption = captionText != null val mediaInset = 4.dp val mediaShape = remember(message.incoming) { From 827614c281bc49975bdd06645c00f3daf08119d8 Mon Sep 17 00:00:00 2001 From: Marcel Hibbe Date: Fri, 15 May 2026 10:53:21 +0200 Subject: [PATCH 2/2] fix to open message context menu for media messages Signed-off-by: Marcel Hibbe --- .../main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt b/app/src/main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt index 88cae22b06..466e501ee7 100644 --- a/app/src/main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt +++ b/app/src/main/java/com/nextcloud/talk/ui/chat/MediaMessage.kt @@ -8,7 +8,7 @@ package com.nextcloud.talk.ui.chat import android.util.Log -import androidx.compose.foundation.clickable +import androidx.compose.foundation.combinedClickable import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.aspectRatio @@ -150,6 +150,7 @@ fun MediaMessage( val fallbackPainter = painterResource(typeContent.drawableResourceId) Box(modifier = Modifier.fillMaxWidth()) { + val messageLongClickHandler = LocalMessageLongClickHandler.current AsyncImage( model = loadedImage, contentDescription = stringResource(R.string.media_message_content_description), @@ -161,7 +162,10 @@ fun MediaMessage( .then(if (aspectRatio != null) Modifier.aspectRatio(aspectRatio) else Modifier) .padding(mediaInset) .clip(mediaShape) - .clickable { onImageClick(message.id) }, + .combinedClickable( + onClick = { onImageClick(message.id) }, + onLongClick = { messageLongClickHandler(message.id) } + ), contentScale = ContentScale.FillWidth, onError = { state -> val cause = state.result.throwable