properly handle contacts with multiple phone numbers

This commit is contained in:
tibbi 2020-07-27 21:53:21 +02:00
parent cdad404b2a
commit 41fb730511
10 changed files with 58 additions and 32 deletions

View file

@ -173,7 +173,7 @@ class MainActivity : SimpleActivity() {
}
private fun getNewConversations(cachedConversations: ArrayList<Conversation>) {
val privateCursor = getMyContactsContentProviderCursorLoader().loadInBackground()
val privateCursor = getMyContactsCursor().loadInBackground()
ensureBackgroundThread {
val conversations = getConversations()
@ -181,9 +181,11 @@ class MainActivity : SimpleActivity() {
val privateContacts = MyContactsContentProvider.getSimpleContacts(this, privateCursor)
if (privateContacts.isNotEmpty()) {
conversations.filter { it.title == it.phoneNumber }.forEach { conversation ->
privateContacts.firstOrNull { it.phoneNumber == conversation.phoneNumber }?.apply {
conversation.title = name
conversation.photoUri = photoUri
privateContacts.forEach { contact ->
if (contact.doesContainPhoneNumber(conversation.phoneNumber)) {
conversation.title = contact.name
conversation.photoUri = contact.photoUri
}
}
}
}