mirror of
https://github.com/SimpleMobileTools/Simple-SMS-Messenger.git
synced 2025-06-05 21:49:22 +02:00
Merge pull request #651 from yparitcher/history
refresh sms history based on oldest sms loaded, ignoring mms
This commit is contained in:
@@ -520,7 +520,8 @@ class ThreadActivity : SimpleActivity() {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
val dateOfFirstItem = messages.first().date
|
val firstItem = messages.first()
|
||||||
|
val dateOfFirstItem = firstItem.date
|
||||||
if (oldestMessageDate == dateOfFirstItem) {
|
if (oldestMessageDate == dateOfFirstItem) {
|
||||||
allMessagesFetched = true
|
allMessagesFetched = true
|
||||||
return
|
return
|
||||||
@@ -530,12 +531,11 @@ class ThreadActivity : SimpleActivity() {
|
|||||||
loadingOlderMessages = true
|
loadingOlderMessages = true
|
||||||
|
|
||||||
ensureBackgroundThread {
|
ensureBackgroundThread {
|
||||||
val firstItem = messages.first()
|
|
||||||
val olderMessages = getMessages(threadId, true, oldestMessageDate)
|
val olderMessages = getMessages(threadId, true, oldestMessageDate)
|
||||||
.filter { message -> !messages.contains(message) }
|
.filter { message -> !messages.contains(message) }
|
||||||
|
|
||||||
messages.addAll(0, olderMessages)
|
messages.addAll(0, olderMessages)
|
||||||
allMessagesFetched = olderMessages.size < MESSAGES_LIMIT || olderMessages.isEmpty()
|
allMessagesFetched = olderMessages.isEmpty()
|
||||||
threadItems = getThreadItems()
|
threadItems = getThreadItems()
|
||||||
|
|
||||||
runOnUiThread {
|
runOnUiThread {
|
||||||
|
@@ -135,6 +135,7 @@ fun Context.getMessages(
|
|||||||
.filter { it.participants.isNotEmpty() }
|
.filter { it.participants.isNotEmpty() }
|
||||||
.filterNot { it.isScheduled && it.millis() < System.currentTimeMillis() }
|
.filterNot { it.isScheduled && it.millis() < System.currentTimeMillis() }
|
||||||
.sortedWith(compareBy<Message> { it.date }.thenBy { it.id })
|
.sortedWith(compareBy<Message> { it.date }.thenBy { it.id })
|
||||||
|
.takeLast(limit)
|
||||||
.toMutableList() as ArrayList<Message>
|
.toMutableList() as ArrayList<Message>
|
||||||
|
|
||||||
return messages
|
return messages
|
||||||
|
Reference in New Issue
Block a user