mirror of
https://github.com/nextcloud/talk-android
synced 2025-03-06 14:27:24 +00:00
fix to update adapter for "edited messages" by system message
This will update the message when an edit was made on other devices. So the system message will trigger that you are informed about a change. But instead to show the system message, you use it's information to immediately update the adapter. Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
This commit is contained in:
parent
683f924556
commit
4e4cb26862
@ -3857,6 +3857,10 @@ class ChatActivity :
|
||||
// delete poll system messages
|
||||
chatMessageIterator.remove()
|
||||
} else if (isEditMessage(currentMessage)) {
|
||||
if (!chatMessageMap.containsKey(currentMessage.value.parentMessage!!.id)) {
|
||||
setMessageAsEdited(currentMessage.value.parentMessage)
|
||||
}
|
||||
|
||||
chatMessageIterator.remove()
|
||||
}
|
||||
}
|
||||
@ -4464,6 +4468,17 @@ class ChatActivity :
|
||||
adapter?.update(messageTemp)
|
||||
}
|
||||
|
||||
private fun setMessageAsEdited(message: IMessage?) {
|
||||
val messageTemp = message as ChatMessage
|
||||
messageTemp.lastEditTimestamp = message.timestamp
|
||||
|
||||
messageTemp.isOneToOneConversation =
|
||||
currentConversation?.type == ConversationType.ROOM_TYPE_ONE_TO_ONE_CALL
|
||||
messageTemp.activeUser = conversationUser
|
||||
|
||||
adapter?.update(messageTemp)
|
||||
}
|
||||
|
||||
private fun updateAdapterForReaction(message: IMessage?) {
|
||||
val messageTemp = message as ChatMessage
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user