From e66a24c8f875ab84039926d01b37051b70b2012e Mon Sep 17 00:00:00 2001 From: tibbi Date: Sun, 23 Aug 2020 21:30:27 +0200 Subject: [PATCH] rewriting the loop checking the messages --- .../smsmessenger/activities/ThreadActivity.kt | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt index 70ac2085..37a64dbd 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt @@ -439,22 +439,23 @@ class ThreadActivity : SimpleActivity() { var prevDateTime = 0 var hadUnreadItems = false - messages.forEach { + for (i in 0 until messages.size) { + val message = messages[i] // do not show the date/time above every message, only if the difference between the 2 messages is at least MIN_DATE_TIME_DIFF_SECS - if (it.date - prevDateTime > MIN_DATE_TIME_DIFF_SECS) { - val simCardID = subscriptionIdToSimId[it.subscriptionId] ?: "?" - items.add(ThreadDateTime(it.date, simCardID)) - prevDateTime = it.date + if (message.date - prevDateTime > MIN_DATE_TIME_DIFF_SECS) { + val simCardID = subscriptionIdToSimId[message.subscriptionId] ?: "?" + items.add(ThreadDateTime(message.date, simCardID)) + prevDateTime = message.date } - items.add(it) + items.add(message) - if (it.type == Telephony.Sms.MESSAGE_TYPE_FAILED) { - items.add(ThreadError(it.id)) + if (message.type == Telephony.Sms.MESSAGE_TYPE_FAILED) { + items.add(ThreadError(message.id)) } - if (!it.read) { + if (!message.read) { hadUnreadItems = true - markMessageRead(it.id, it.isMMS) + markMessageRead(message.id, message.isMMS) conversationsDB.markRead(threadId.toLong()) } }