fetch messages on background threads

This commit is contained in:
tibbi
2020-04-05 11:00:08 +02:00
parent 7f2470567d
commit a8a74e7eb0
2 changed files with 22 additions and 16 deletions

View File

@@ -10,10 +10,7 @@ import android.view.Menu
import android.view.MenuItem
import com.simplemobiletools.commons.extensions.appLaunched
import com.simplemobiletools.commons.extensions.checkAppSideloading
import com.simplemobiletools.commons.helpers.LICENSE_EVENT_BUS
import com.simplemobiletools.commons.helpers.PERMISSION_READ_CONTACTS
import com.simplemobiletools.commons.helpers.PERMISSION_READ_SMS
import com.simplemobiletools.commons.helpers.isQPlus
import com.simplemobiletools.commons.helpers.*
import com.simplemobiletools.commons.models.FAQItem
import com.simplemobiletools.smsmessenger.BuildConfig
import com.simplemobiletools.smsmessenger.R
@@ -128,7 +125,9 @@ class MainActivity : SimpleActivity() {
private fun initMessenger() {
storeStateVariables()
ensureBackgroundThread {
val messages = getMessages()
runOnUiThread {
MessagesAdapter(this, messages, messages_list, messages_fastscroller) {
Intent(this, ThreadActivity::class.java).apply {
putExtra(THREAD_ID, (it as Message).thread)
@@ -140,6 +139,8 @@ class MainActivity : SimpleActivity() {
messages_list.adapter = this
}
}
}
}
private fun launchSettings() {
startActivity(Intent(applicationContext, SettingsActivity::class.java))

View File

@@ -6,6 +6,7 @@ import android.telephony.SmsManager
import com.simplemobiletools.commons.extensions.applyColorFilter
import com.simplemobiletools.commons.extensions.onTextChangeListener
import com.simplemobiletools.commons.extensions.value
import com.simplemobiletools.commons.helpers.ensureBackgroundThread
import com.simplemobiletools.smsmessenger.R
import com.simplemobiletools.smsmessenger.adapters.ThreadAdapter
import com.simplemobiletools.smsmessenger.extensions.config
@@ -37,7 +38,9 @@ class ThreadActivity : SimpleActivity() {
bus = EventBus.getDefault()
bus!!.register(this)
ensureBackgroundThread {
setupAdapter()
}
setupButtons()
}
@@ -50,9 +53,11 @@ class ThreadActivity : SimpleActivity() {
val threadID = intent.getIntExtra(THREAD_ID, 0)
val items = getThreadItems(threadID)
runOnUiThread {
val adapter = ThreadAdapter(this, items, thread_messages_list, thread_messages_fastscroller) {}
thread_messages_list.adapter = adapter
}
}
private fun setupButtons() {
thread_type_message.setColors(config.textColor, config.primaryColor, config.backgroundColor)