From 187946bf3400ecb01152a697f9540de1ba7e904c Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Mon, 23 Jun 2025 13:10:45 +0200 Subject: [PATCH] Fixed chat bubble when reply original message is missing (reply UI is hidden) --- .../org/linphone/ui/main/chat/model/MessageModel.kt | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/org/linphone/ui/main/chat/model/MessageModel.kt b/app/src/main/java/org/linphone/ui/main/chat/model/MessageModel.kt index a7ab5a0c3..e489e6c24 100644 --- a/app/src/main/java/org/linphone/ui/main/chat/model/MessageModel.kt +++ b/app/src/main/java/org/linphone/ui/main/chat/model/MessageModel.kt @@ -111,7 +111,7 @@ class MessageModel )?.params?.instantMessagingEncryptionMandatory == true ) - val isReply = chatMessage.isReply + val isReply = MutableLiveData() val replyToMessageId = chatMessage.replyMessageId @@ -321,8 +321,11 @@ class MessageModel updateReactionsList() computeContentsList() - if (isReply) { + if (chatMessage.isReply) { + // Wait to see if original message is found before setting isReply to true computeReplyInfo() + } else { + isReply.postValue(false) } coreContext.postOnMainThread { @@ -647,8 +650,10 @@ class MessageModel val avatarModel = coreContext.contactsManager.getContactAvatarModelForAddress(from) replyTo.postValue(avatarModel.contactName ?: LinphoneUtils.getDisplayName(from)) replyText.postValue(LinphoneUtils.getFormattedTextDescribingMessage(replyMessage)) + isReply.postValue(true) } else { - Log.e("$TAG Failed to find the reply message from ID [${chatMessage.replyMessageId}]") + Log.w("$TAG Failed to find the reply message from ID [${chatMessage.replyMessageId}]") + isReply.postValue(false) } }