properly add new messages into the local database on receiving

This commit is contained in:
tibbi 2020-05-30 20:21:27 +02:00
parent 661798cff4
commit 0db8b202c7
3 changed files with 19 additions and 6 deletions

View file

@ -5,9 +5,8 @@ import android.content.Context
import android.content.Intent
import android.provider.Telephony
import com.simplemobiletools.commons.extensions.isNumberBlocked
import com.simplemobiletools.smsmessenger.extensions.getThreadId
import com.simplemobiletools.smsmessenger.extensions.insertNewSMS
import com.simplemobiletools.smsmessenger.extensions.showReceivedMessageNotification
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.smsmessenger.extensions.*
import com.simplemobiletools.smsmessenger.helpers.refreshMessages
class SmsReceiver : BroadcastReceiver() {
@ -34,6 +33,11 @@ class SmsReceiver : BroadcastReceiver() {
val messageId = context.insertNewSMS(address, subject, body, date, read, threadId, type, subscriptionId)
context.showReceivedMessageNotification(address, body, threadId.toInt(), null, messageId, false)
refreshMessages()
ensureBackgroundThread {
val conversation = context.getConversations(threadId).firstOrNull() ?: return@ensureBackgroundThread
context.conversationsDB.insertOrUpdate(conversation)
}
}
}
}