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 4e9ae074..f2636220 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/MainActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/activities/MainActivity.kt @@ -144,8 +144,19 @@ class MainActivity : SimpleActivity() { private fun initMessenger() { storeStateVariables() + val privateCursor = getMyContactsContentProviderCursorLoader().loadInBackground() + ensureBackgroundThread { val conversations = getConversations() + + // check if no message came from a privately stored contact in Simple Contacts + val privateContacts = MyContactsContentProvider.getSimpleContacts(this, privateCursor) + conversations.filter { it.title == it.phoneNumber }.forEach { conversation -> + privateContacts.firstOrNull { it.phoneNumber == conversation.phoneNumber }?.apply { + conversation.title = name + } + } + runOnUiThread { val hasConversations = conversations.isNotEmpty() conversations_list.beVisibleIf(hasConversations) diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/extensions/Context.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/extensions/Context.kt index a41bdf12..31606e9d 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/extensions/Context.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/extensions/Context.kt @@ -186,6 +186,7 @@ fun Context.getConversations(): ArrayList { val selection = "${Threads.MESSAGE_COUNT} > ?" val selectionArgs = arrayOf("0") val sortOrder = "${Threads.DATE} DESC" + val conversations = ArrayList() queryCursor(uri, projection, selection, selectionArgs, sortOrder, true) { cursor -> val id = cursor.getIntValue(Threads._ID) diff --git a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/models/Conversation.kt b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/models/Conversation.kt index 65329fc8..8b14decb 100644 --- a/app/src/main/kotlin/com/simplemobiletools/smsmessenger/models/Conversation.kt +++ b/app/src/main/kotlin/com/simplemobiletools/smsmessenger/models/Conversation.kt @@ -1,5 +1,5 @@ package com.simplemobiletools.smsmessenger.models data class Conversation( - val id: Int, val snippet: String, val date: Int, val read: Boolean, val title: String, val photoUri: String, + val id: Int, val snippet: String, val date: Int, val read: Boolean, var title: String, val photoUri: String, val isGroupConversation: Boolean, val phoneNumber: String)