forked from mirrors/linphone-iphone
Check whether the new message received is different from the first message in the list
This commit is contained in:
parent
d1148cca1c
commit
423fb56401
2 changed files with 38 additions and 18 deletions
|
|
@ -6,9 +6,15 @@
|
|||
},
|
||||
" et " : {
|
||||
|
||||
},
|
||||
" has reacted by " : {
|
||||
|
||||
},
|
||||
" or " : {
|
||||
|
||||
},
|
||||
" to: " : {
|
||||
|
||||
},
|
||||
"." : {
|
||||
|
||||
|
|
@ -141,6 +147,15 @@
|
|||
},
|
||||
"👍" : {
|
||||
|
||||
},
|
||||
"📅 Meeting has been cancelled" : {
|
||||
|
||||
},
|
||||
"📅 Meeting has been modified" : {
|
||||
|
||||
},
|
||||
"📅 You are invited to a meeting" : {
|
||||
|
||||
},
|
||||
"😂" : {
|
||||
|
||||
|
|
@ -1912,6 +1927,9 @@
|
|||
},
|
||||
"Message copied into clipboard" : {
|
||||
|
||||
},
|
||||
"Message received" : {
|
||||
|
||||
},
|
||||
"message_delivery_info_error_title" : {
|
||||
"extractionState" : "manual",
|
||||
|
|
|
|||
|
|
@ -937,25 +937,27 @@ class ConversationViewModel: ObservableObject {
|
|||
)
|
||||
)
|
||||
|
||||
self.addChatMessageDelegate(message: eventLog.chatMessage!)
|
||||
|
||||
DispatchQueue.main.async {
|
||||
Log.info("[ConversationViewModel] Get new Messages \(self.conversationMessagesSection.count)")
|
||||
if !self.conversationMessagesSection.isEmpty
|
||||
&& !self.conversationMessagesSection[0].rows.isEmpty
|
||||
&& self.conversationMessagesSection[0].rows[0].message.isOutgoing
|
||||
&& (self.conversationMessagesSection[0].rows[0].message.address == message.message.address) {
|
||||
self.conversationMessagesSection[0].rows[0].message.isFirstMessage = false
|
||||
}
|
||||
if self.conversationMessagesSection[0].rows.first?.eventModel.eventLog.chatMessage?.messageId != eventLog.chatMessage?.messageId {
|
||||
self.addChatMessageDelegate(message: eventLog.chatMessage!)
|
||||
|
||||
if self.conversationMessagesSection.isEmpty && self.displayedConversation != nil {
|
||||
self.conversationMessagesSection.append(MessagesSection(date: Date(), chatRoomID: self.displayedConversation!.id, rows: [message]))
|
||||
} else {
|
||||
self.conversationMessagesSection[0].rows.insert(message, at: 0)
|
||||
}
|
||||
|
||||
if !message.message.isOutgoing {
|
||||
self.displayedConversationUnreadMessagesCount = unreadMessagesCount
|
||||
DispatchQueue.main.async {
|
||||
Log.info("[ConversationViewModel] Get new Messages \(self.conversationMessagesSection.count)")
|
||||
if !self.conversationMessagesSection.isEmpty
|
||||
&& !self.conversationMessagesSection[0].rows.isEmpty
|
||||
&& self.conversationMessagesSection[0].rows[0].message.isOutgoing
|
||||
&& (self.conversationMessagesSection[0].rows[0].message.address == message.message.address) {
|
||||
self.conversationMessagesSection[0].rows[0].message.isFirstMessage = false
|
||||
}
|
||||
|
||||
if self.conversationMessagesSection.isEmpty && self.displayedConversation != nil {
|
||||
self.conversationMessagesSection.append(MessagesSection(date: Date(), chatRoomID: self.displayedConversation!.id, rows: [message]))
|
||||
} else {
|
||||
self.conversationMessagesSection[0].rows.insert(message, at: 0)
|
||||
}
|
||||
|
||||
if !message.message.isOutgoing {
|
||||
self.displayedConversationUnreadMessagesCount = unreadMessagesCount
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue