From ffdb9bd200046606dae79ac918125fdd941af748 Mon Sep 17 00:00:00 2001 From: kanat Date: Thu, 3 Oct 2024 14:50:06 -0400 Subject: [PATCH] [PBE-6029] bug in updating quoted message content --- .../android/compose/ui/util/QuotedMessageTextFormatter.kt | 4 +++- .../src/main/res/values-en/strings.xml | 3 +++ .../src/main/res/values-es/strings.xml | 1 + .../src/main/res/values-fr/strings.xml | 1 + .../src/main/res/values-id/strings.xml | 1 + .../src/main/res/values-it/strings.xml | 1 + .../src/main/res/values-ko/strings.xml | 1 + .../src/main/res/values/strings.xml | 3 +++ .../feature/messages/list/adapter/view/MessageReplyView.kt | 5 ++++- 9 files changed, 18 insertions(+), 2 deletions(-) diff --git a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/util/QuotedMessageTextFormatter.kt b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/util/QuotedMessageTextFormatter.kt index fe8a4c4f36d..531345b211b 100644 --- a/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/util/QuotedMessageTextFormatter.kt +++ b/stream-chat-android-compose/src/main/java/io/getstream/chat/android/compose/ui/util/QuotedMessageTextFormatter.kt @@ -24,6 +24,7 @@ import androidx.compose.ui.text.AnnotatedString import androidx.compose.ui.text.TextStyle import io.getstream.chat.android.client.utils.attachment.isGiphy import io.getstream.chat.android.client.utils.attachment.isImage +import io.getstream.chat.android.client.utils.message.isDeleted import io.getstream.chat.android.compose.R import io.getstream.chat.android.compose.ui.theme.ChatTheme import io.getstream.chat.android.compose.ui.theme.MessageTheme @@ -208,6 +209,7 @@ private class DefaultQuotedMessageTextFormatter( val attachment = message.attachments.firstOrNull() val quotedMessageText = when { + message.isDeleted() -> context.getString(R.string.stream_ui_message_list_message_deleted) displayedText.isNotBlank() -> displayedText attachment != null -> when { attachment.name != null -> attachment.name @@ -227,7 +229,7 @@ private class DefaultQuotedMessageTextFormatter( val textColor = textStyle(replyMessage?.isMine(currentUser) != false).color return buildAnnotatedMessageText( - text = displayedText, + text = quotedMessageText, textColor = textColor, textFontStyle = typography.body.fontStyle, linkColor = colors.primaryAccent, diff --git a/stream-chat-android-ui-common/src/main/res/values-en/strings.xml b/stream-chat-android-ui-common/src/main/res/values-en/strings.xml index f27a58e6e68..f02d8d86209 100644 --- a/stream-chat-android-ui-common/src/main/res/values-en/strings.xml +++ b/stream-chat-android-ui-common/src/main/res/values-en/strings.xml @@ -34,4 +34,7 @@ The load failed due to the invalid url. Something went wrong. Unable to open attachment: %s Error. File can\'t be displayed + + + This message was deleted. diff --git a/stream-chat-android-ui-common/src/main/res/values-es/strings.xml b/stream-chat-android-ui-common/src/main/res/values-es/strings.xml index 194c7371fd5..803603b187e 100644 --- a/stream-chat-android-ui-common/src/main/res/values-es/strings.xml +++ b/stream-chat-android-ui-common/src/main/res/values-es/strings.xml @@ -32,6 +32,7 @@ "No se pudo cargar debido a un error inesperado." "No hay ninguna aplicación para ver esta URL: %s" + Este mensaje fue eliminado. "Error. el video no se puede mostrar" "Eliminar mensaje" "Este mensaje puede infringir nuestra política de moderación. ¿Estás seguro de que quieres enviarlo? Eche un vistazo a nuestras Pautas de la comunidad." diff --git a/stream-chat-android-ui-common/src/main/res/values-fr/strings.xml b/stream-chat-android-ui-common/src/main/res/values-fr/strings.xml index e88835caeff..5ccacfe0b57 100644 --- a/stream-chat-android-ui-common/src/main/res/values-fr/strings.xml +++ b/stream-chat-android-ui-common/src/main/res/values-fr/strings.xml @@ -20,5 +20,6 @@ "Un problème est survenu. Impossible d\'ouvrir la pièce jointe: %s" "Le chargement a échoué en raison d\'une URL non valide." "Le chargement a échoué en raison d\'une erreur inconnue." + Ce message a été supprimé. "Hier" \ No newline at end of file diff --git a/stream-chat-android-ui-common/src/main/res/values-id/strings.xml b/stream-chat-android-ui-common/src/main/res/values-id/strings.xml index 9dfc3114a67..24f364f0bfe 100644 --- a/stream-chat-android-ui-common/src/main/res/values-id/strings.xml +++ b/stream-chat-android-ui-common/src/main/res/values-id/strings.xml @@ -20,5 +20,6 @@ "Terjadi kesalahan. Tidak dapat membuka lampiran: %s" "Data gagal dimuat karena url tidak valid." "Data gagal dimuat karena kesalahan yang tidak diketahui." + Pesan ini telah dihapus. "Kemarin" \ No newline at end of file diff --git a/stream-chat-android-ui-common/src/main/res/values-it/strings.xml b/stream-chat-android-ui-common/src/main/res/values-it/strings.xml index dbfc037e7dd..7bf9c1ed74c 100644 --- a/stream-chat-android-ui-common/src/main/res/values-it/strings.xml +++ b/stream-chat-android-ui-common/src/main/res/values-it/strings.xml @@ -19,5 +19,6 @@ "Qualcosa è andato storto. Impossibile aprire l\'allegato: %s" "Caricamento non riuscito a causa di un URL non valido." "Caricamento non riuscito a causa di un errore sconosciuto." + Questo messaggio è stato eliminato. "Ieri" \ No newline at end of file diff --git a/stream-chat-android-ui-common/src/main/res/values-ko/strings.xml b/stream-chat-android-ui-common/src/main/res/values-ko/strings.xml index 510d4ecc51d..8dbc26b7cba 100644 --- a/stream-chat-android-ui-common/src/main/res/values-ko/strings.xml +++ b/stream-chat-android-ui-common/src/main/res/values-ko/strings.xml @@ -19,5 +19,6 @@ "문제가 발생했습니다. 첨부 파일을 열 수 없음: %s" "잘못된 URL로 인해 로드에 실패했습니다." "알 수 없는 오류로 인해 로드에 실패했습니다." + 이 메시지가 삭제되었습니다. "어제" \ No newline at end of file diff --git a/stream-chat-android-ui-common/src/main/res/values/strings.xml b/stream-chat-android-ui-common/src/main/res/values/strings.xml index 6defa44e131..d2eec5a74aa 100644 --- a/stream-chat-android-ui-common/src/main/res/values/strings.xml +++ b/stream-chat-android-ui-common/src/main/res/values/strings.xml @@ -48,6 +48,9 @@ There is no app to view this url:\n%s just now + + This message was deleted. + Failed to send message This message might violate our moderation policy. Are you sure you want to send it? Please take a look at our Community Guidelines. diff --git a/stream-chat-android-ui-components/src/main/kotlin/io/getstream/chat/android/ui/feature/messages/list/adapter/view/MessageReplyView.kt b/stream-chat-android-ui-components/src/main/kotlin/io/getstream/chat/android/ui/feature/messages/list/adapter/view/MessageReplyView.kt index 7fee8c903b7..c00d2916b45 100644 --- a/stream-chat-android-ui-components/src/main/kotlin/io/getstream/chat/android/ui/feature/messages/list/adapter/view/MessageReplyView.kt +++ b/stream-chat-android-ui-components/src/main/kotlin/io/getstream/chat/android/ui/feature/messages/list/adapter/view/MessageReplyView.kt @@ -29,6 +29,7 @@ import io.getstream.chat.android.client.ChatClient import io.getstream.chat.android.client.extensions.duration import io.getstream.chat.android.client.utils.attachment.isAudioRecording import io.getstream.chat.android.client.utils.attachment.isLink +import io.getstream.chat.android.client.utils.message.isDeleted import io.getstream.chat.android.models.Message import io.getstream.chat.android.ui.ChatUI import io.getstream.chat.android.ui.R @@ -213,7 +214,9 @@ public class MessageReplyView : FrameLayout { private fun setReplyText(message: Message, isMine: Boolean, style: MessageReplyStyle?) { val attachment = message.attachments.lastOrNull() val displayedText = message.getTranslatedText() - binding.replyText.text = if (attachment == null || displayedText.isNotBlank()) { + binding.replyText.text = if (message.isDeleted()) { + context.getString(R.string.stream_ui_message_list_message_deleted) + } else if (attachment == null || displayedText.isNotBlank()) { if (ellipsize) { ellipsize(displayedText) } else {