Skip to content

Commit

Permalink
Merge pull request #10142 from nextcloud/backport/10048/stable27
Browse files Browse the repository at this point in the history
[stable27] fix(MessagesList) - check for temporary messages while soft updating
  • Loading branch information
Antreesy authored Aug 7, 2023
2 parents 64e6695 + 74f9df1 commit a6c082e
Showing 1 changed file with 13 additions and 4 deletions.
17 changes: 13 additions & 4 deletions src/components/MessagesList/MessagesList.vue
Original file line number Diff line number Diff line change
Expand Up @@ -339,15 +339,24 @@ export default {
// Check if we have this group in the old list already and it is unchanged
return newGroups.map(newGroup => oldGroupsMap.has(newGroup.id)
&& newGroup.messages.length === oldGroupsMap.get(newGroup.id).messages.length
&& newGroup.dateSeparator === oldGroupsMap.get(newGroup.id).dateSeparator
&& newGroup.previousMessageId === oldGroupsMap.get(newGroup.id).previousMessageId
&& newGroup.nextMessageId === oldGroupsMap.get(newGroup.id).nextMessageId
&& this.areGroupsIdentical(newGroup, oldGroupsMap.get(newGroup.id))
? oldGroupsMap.get(newGroup.id)
: newGroup
).sort((a, b) => a.id - b.id)
},
areGroupsIdentical(group1, group2) {
if (group1.messages.length !== group2.messages.length
|| group1.dateSeparator !== group2.dateSeparator
|| group1.previousMessageId !== group2.previousMessageId
|| group1.nextMessageId !== group2.nextMessageId) {
return false
}
// Check for temporary messages, replaced with messages from server
return group1.messages.every((message, index) => group2.messages[index].id === message.id)
},
removeExpiredMessagesFromStore() {
this.$store.dispatch('removeExpiredMessages', {
token: this.token,
Expand Down

0 comments on commit a6c082e

Please sign in to comment.