From 417c4083b5adc0cafacf99d5039c5f43ec92e746 Mon Sep 17 00:00:00 2001 From: Sylvain Berfini Date: Fri, 22 Jan 2021 12:32:28 +0100 Subject: [PATCH] Fixed issue in ephemeral message removal from view --- .../chat/viewmodels/ChatMessagesListViewModel.kt | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatMessagesListViewModel.kt b/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatMessagesListViewModel.kt index b93aba84f..a5a029924 100644 --- a/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatMessagesListViewModel.kt +++ b/app/src/main/java/org/linphone/activities/main/chat/viewmodels/ChatMessagesListViewModel.kt @@ -135,9 +135,7 @@ class ChatMessagesListViewModel(private val chatRoom: ChatRoom) : ViewModel() { override fun onEphemeralMessageDeleted(chatRoom: ChatRoom, eventLog: EventLog) { Log.i("[Chat Messages] An ephemeral chat message has expired, removing it from event list") - val chatMessage = eventLog.chatMessage - chatMessage ?: return - deleteMessage(chatMessage) + deleteEvent(eventLog) } override fun onEphemeralEvent(chatRoom: ChatRoom, eventLog: EventLog) { @@ -222,4 +220,13 @@ class ChatMessagesListViewModel(private val chatRoom: ChatRoom) : ViewModel() { } return list } + + private fun deleteEvent(eventLog: EventLog) { + val chatMessage = eventLog.chatMessage + if (chatMessage != null) { + LinphoneUtils.deleteFilesAttachedToChatMessage(chatMessage) + chatRoom.deleteMessage(chatMessage) + } + events.value = getEvents() + } }