diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/MainActivity.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/MainActivity.kt index 831a5daf..5432c015 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/MainActivity.kt @@ -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,16 +125,20 @@ class MainActivity : SimpleActivity() { private fun initMessenger() { storeStateVariables() - val messages = getMessages() - MessagesAdapter(this, messages, messages_list, messages_fastscroller) { - Intent(this, ThreadActivity::class.java).apply { - putExtra(THREAD_ID, (it as Message).thread) - putExtra(THREAD_NAME, it.senderName) - putExtra(THREAD_NUMBER, it.senderNumber) - startActivity(this) + 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) + putExtra(THREAD_NAME, it.senderName) + putExtra(THREAD_NUMBER, it.senderNumber) + startActivity(this) + } + }.apply { + messages_list.adapter = this + } } - }.apply { - messages_list.adapter = this } } 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 1521186f..b40bcd8a 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/ThreadActivity.kt @@ -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) - setupAdapter() + ensureBackgroundThread { + setupAdapter() + } setupButtons() } @@ -50,8 +53,10 @@ class ThreadActivity : SimpleActivity() { val threadID = intent.getIntExtra(THREAD_ID, 0) val items = getThreadItems(threadID) - val adapter = ThreadAdapter(this, items, thread_messages_list, thread_messages_fastscroller) {} - thread_messages_list.adapter = adapter + runOnUiThread { + val adapter = ThreadAdapter(this, items, thread_messages_list, thread_messages_fastscroller) {} + thread_messages_list.adapter = adapter + } } private fun setupButtons() {