compare cached messages with new ones asap, continue only if necessary

This commit is contained in:
tibbi 2020-12-21 21:13:32 +01:00
parent 189e60ac32
commit 2f6ca40953
2 changed files with 9 additions and 4 deletions

View file

@ -104,7 +104,12 @@ class ThreadActivity : SimpleActivity() {
private fun setupThread() {
val privateCursor = getMyContactsCursor()?.loadInBackground()
ensureBackgroundThread {
val cachedMessagesCode = messages.hashCode()
messages = getMessages(threadId)
if (messages.hashCode() == cachedMessagesCode) {
return@ensureBackgroundThread
}
setupParticipants()
// check if no participant came from a privately stored contact in Simple Contacts
@ -139,6 +144,10 @@ class ThreadActivity : SimpleActivity() {
participants.add(contact)
}
messages.chunked(30).forEach { currentMessages ->
messagesDB.insertMessages(*currentMessages.toTypedArray())
}
setupAttachmentSizes()
setupAdapter()
runOnUiThread {