properly show favorite private contacts from Simple Contacts Pro

This commit is contained in:
tibbi
2020-06-19 11:32:48 +02:00
parent 2d59b72f25
commit 5cf3e25ef9
7 changed files with 16 additions and 7 deletions

View File

@ -56,6 +56,6 @@ android {
} }
dependencies { dependencies {
implementation 'com.simplemobiletools:commons:5.29.9' implementation 'com.simplemobiletools:commons:5.29.10'
implementation 'com.github.tibbi:IndicatorFastScroll:08f512858a' implementation 'com.github.tibbi:IndicatorFastScroll:08f512858a'
} }

View File

@ -44,7 +44,7 @@ class DialpadActivity : SimpleActivity() {
} }
speedDialValues = config.getSpeedDialValues() speedDialValues = config.getSpeedDialValues()
privateCursor = getMyContactsContentProviderCursorLoader().loadInBackground() privateCursor = getMyContactsCursor().loadInBackground()
dialpad_0_holder.setOnClickListener { dialpadPressed('0', it) } dialpad_0_holder.setOnClickListener { dialpadPressed('0', it) }
dialpad_1.setOnClickListener { dialpadPressed('1', it) } dialpad_1.setOnClickListener { dialpadPressed('1', it) }

View File

@ -74,7 +74,7 @@ class ContactsFragment(context: Context, attributeSet: AttributeSet) : MyViewPag
} }
override fun refreshItems() { override fun refreshItems() {
val privateCursor = context?.getMyContactsContentProviderCursorLoader()?.loadInBackground() val privateCursor = context?.getMyContactsCursor()?.loadInBackground()
SimpleContactsHelper(context).getAvailableContacts(false) { contacts -> SimpleContactsHelper(context).getAvailableContacts(false) { contacts ->
allContacts = contacts allContacts = contacts

View File

@ -5,6 +5,7 @@ import android.util.AttributeSet
import com.reddit.indicatorfastscroll.FastScrollItemIndicator import com.reddit.indicatorfastscroll.FastScrollItemIndicator
import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter
import com.simplemobiletools.commons.extensions.* import com.simplemobiletools.commons.extensions.*
import com.simplemobiletools.commons.helpers.MyContactsContentProvider
import com.simplemobiletools.commons.helpers.PERMISSION_READ_CONTACTS import com.simplemobiletools.commons.helpers.PERMISSION_READ_CONTACTS
import com.simplemobiletools.commons.helpers.SimpleContactsHelper import com.simplemobiletools.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.models.SimpleContact import com.simplemobiletools.commons.models.SimpleContact
@ -47,8 +48,16 @@ class FavoritesFragment(context: Context, attributeSet: AttributeSet) : MyViewPa
} }
override fun refreshItems() { override fun refreshItems() {
val privateCursor = context?.getMyFavoriteContactsCursor()?.loadInBackground()
SimpleContactsHelper(context).getAvailableContacts(true) { contacts -> SimpleContactsHelper(context).getAvailableContacts(true) { contacts ->
allContacts = contacts allContacts = contacts
val privateContacts = MyContactsContentProvider.getSimpleContacts(context, privateCursor)
if (privateContacts.isNotEmpty()) {
allContacts.addAll(privateContacts)
allContacts.sort()
}
activity?.runOnUiThread { activity?.runOnUiThread {
gotContacts(contacts) gotContacts(contacts)
} }

View File

@ -43,7 +43,7 @@ class RecentsFragment(context: Context, attributeSet: AttributeSet) : MyViewPage
override fun primaryColorChanged(color: Int) {} override fun primaryColorChanged(color: Int) {}
override fun refreshItems() { override fun refreshItems() {
val privateCursor = context?.getMyContactsContentProviderCursorLoader()?.loadInBackground() val privateCursor = context?.getMyContactsCursor()?.loadInBackground()
RecentsHelper(context).getRecentCalls { recents -> RecentsHelper(context).getRecentCalls { recents ->
SimpleContactsHelper(context).getAvailableContacts(false) { contacts -> SimpleContactsHelper(context).getAvailableContacts(false) { contacts ->
val privateContacts = MyContactsContentProvider.getSimpleContacts(context, privateCursor) val privateContacts = MyContactsContentProvider.getSimpleContacts(context, privateCursor)

View File

@ -6,7 +6,7 @@ import android.net.Uri
import android.telecom.Call import android.telecom.Call
import android.telecom.InCallService import android.telecom.InCallService
import android.telecom.VideoProfile import android.telecom.VideoProfile
import com.simplemobiletools.commons.extensions.getMyContactsContentProviderCursorLoader import com.simplemobiletools.commons.extensions.getMyContactsCursor
import com.simplemobiletools.commons.helpers.MyContactsContentProvider import com.simplemobiletools.commons.helpers.MyContactsContentProvider
import com.simplemobiletools.commons.helpers.SimpleContactsHelper import com.simplemobiletools.commons.helpers.SimpleContactsHelper
import com.simplemobiletools.commons.helpers.ensureBackgroundThread import com.simplemobiletools.commons.helpers.ensureBackgroundThread
@ -71,7 +71,7 @@ class CallManager {
if (callContact.name != callContact.number) { if (callContact.name != callContact.number) {
callback(callContact) callback(callContact)
} else { } else {
val privateCursor = context.getMyContactsContentProviderCursorLoader().loadInBackground() val privateCursor = context.getMyContactsCursor().loadInBackground()
ensureBackgroundThread { ensureBackgroundThread {
val privateContacts = MyContactsContentProvider.getSimpleContacts(context, privateCursor) val privateContacts = MyContactsContentProvider.getSimpleContacts(context, privateCursor)
val privateContact = privateContacts.firstOrNull { it.phoneNumber == callContact.number } val privateContact = privateContacts.firstOrNull { it.phoneNumber == callContact.number }

View File

@ -15,7 +15,7 @@ class RecentsHelper(private val context: Context) {
@SuppressLint("MissingPermission") @SuppressLint("MissingPermission")
fun getRecentCalls(callback: (ArrayList<RecentCall>) -> Unit) { fun getRecentCalls(callback: (ArrayList<RecentCall>) -> Unit) {
val privateCursor = context.getMyContactsContentProviderCursorLoader().loadInBackground() val privateCursor = context.getMyContactsCursor().loadInBackground()
ensureBackgroundThread { ensureBackgroundThread {
if (!context.hasPermission(PERMISSION_READ_CALL_LOG)) { if (!context.hasPermission(PERMISSION_READ_CALL_LOG)) {
callback(ArrayList()) callback(ArrayList())