Fixed issue in ephemeral message removal from view

This commit is contained in:
Sylvain Berfini 2021-01-22 12:32:28 +01:00
parent 400e64e18e
commit 417c4083b5

View file

@ -135,9 +135,7 @@ class ChatMessagesListViewModel(private val chatRoom: ChatRoom) : ViewModel() {
override fun onEphemeralMessageDeleted(chatRoom: ChatRoom, eventLog: EventLog) { override fun onEphemeralMessageDeleted(chatRoom: ChatRoom, eventLog: EventLog) {
Log.i("[Chat Messages] An ephemeral chat message has expired, removing it from event list") Log.i("[Chat Messages] An ephemeral chat message has expired, removing it from event list")
val chatMessage = eventLog.chatMessage deleteEvent(eventLog)
chatMessage ?: return
deleteMessage(chatMessage)
} }
override fun onEphemeralEvent(chatRoom: ChatRoom, eventLog: EventLog) { override fun onEphemeralEvent(chatRoom: ChatRoom, eventLog: EventLog) {
@ -222,4 +220,13 @@ class ChatMessagesListViewModel(private val chatRoom: ChatRoom) : ViewModel() {
} }
return list return list
} }
private fun deleteEvent(eventLog: EventLog) {
val chatMessage = eventLog.chatMessage
if (chatMessage != null) {
LinphoneUtils.deleteFilesAttachedToChatMessage(chatMessage)
chatRoom.deleteMessage(chatMessage)
}
events.value = getEvents()
}
} }