From 27902bd3fc5c5d632ec6656f5ddc3abd442d11c9 Mon Sep 17 00:00:00 2001 From: tibbi Date: Thu, 21 May 2020 21:34:09 +0200 Subject: [PATCH] check private contacts at filling Recent names too --- .../dialer/fragments/RecentsFragment.kt | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/src/main/kotlin/com/simplemobiletools/dialer/fragments/RecentsFragment.kt b/app/src/main/kotlin/com/simplemobiletools/dialer/fragments/RecentsFragment.kt index 3e1f2a48..1e6186b0 100644 --- a/app/src/main/kotlin/com/simplemobiletools/dialer/fragments/RecentsFragment.kt +++ b/app/src/main/kotlin/com/simplemobiletools/dialer/fragments/RecentsFragment.kt @@ -3,6 +3,7 @@ package com.simplemobiletools.dialer.fragments import android.content.Context import android.util.AttributeSet import com.simplemobiletools.commons.extensions.* +import com.simplemobiletools.commons.helpers.MyContactsContentProvider import com.simplemobiletools.commons.helpers.PERMISSION_READ_CALL_LOG import com.simplemobiletools.dialer.R import com.simplemobiletools.dialer.activities.SimpleActivity @@ -41,7 +42,18 @@ class RecentsFragment(context: Context, attributeSet: AttributeSet) : MyViewPage override fun primaryColorChanged(color: Int) {} override fun refreshItems() { + val privateCursor = context?.getMyContactsContentProviderCursorLoader()?.loadInBackground() RecentsHelper(context).getRecentCalls { recents -> + val privateContacts = MyContactsContentProvider.getSimpleContacts(context, privateCursor) + if (privateContacts.isNotEmpty()) { + recents.filter { it.phoneNumber == it.name }.forEach { recent -> + val privateContact = privateContacts.firstOrNull { it.phoneNumber == recent.phoneNumber } + if (privateContact != null) { + recent.name = privateContact.name + } + } + } + activity?.runOnUiThread { gotRecents(recents) }