From 80baa076494e9a06004ca236ef0b435dc64e04d0 Mon Sep 17 00:00:00 2001 From: tibbi Date: Sun, 12 Jul 2020 21:26:48 +0200 Subject: [PATCH] improve the handling of favorite contacts with multiple numbers --- .../dialer/fragments/FavoritesFragment.kt | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/dialer/fragments/FavoritesFragment.kt b/app/src/main/kotlin/com/simplemobiletools/dialer/fragments/FavoritesFragment.kt index 44b4a840..396c1030 100644 --- a/app/src/main/kotlin/com/simplemobiletools/dialer/fragments/FavoritesFragment.kt +++ b/app/src/main/kotlin/com/simplemobiletools/dialer/fragments/FavoritesFragment.kt @@ -4,10 +4,12 @@ import android.content.Context import android.util.AttributeSet import com.reddit.indicatorfastscroll.FastScrollItemIndicator import com.simplemobiletools.commons.adapters.MyRecyclerViewAdapter +import com.simplemobiletools.commons.dialogs.RadioGroupDialog import com.simplemobiletools.commons.extensions.* import com.simplemobiletools.commons.helpers.MyContactsContentProvider import com.simplemobiletools.commons.helpers.PERMISSION_READ_CONTACTS import com.simplemobiletools.commons.helpers.SimpleContactsHelper +import com.simplemobiletools.commons.models.RadioItem import com.simplemobiletools.commons.models.SimpleContact import com.simplemobiletools.dialer.R import com.simplemobiletools.dialer.activities.SimpleActivity @@ -76,7 +78,19 @@ class FavoritesFragment(context: Context, attributeSet: AttributeSet) : MyViewPa val currAdapter = fragment_list.adapter if (currAdapter == null) { ContactsAdapter(activity as SimpleActivity, contacts, fragment_list, this, showDeleteButton = false) { - activity?.launchCallIntent((it as SimpleContact).phoneNumbers.first()) + val phoneNumbers = (it as SimpleContact).phoneNumbers + if (phoneNumbers.size <= 1) { + activity?.launchCallIntent(it.phoneNumbers.first()) + } else { + val items = ArrayList() + phoneNumbers.forEachIndexed { index, phoneNumber -> + items.add(RadioItem(index, phoneNumber)) + } + + RadioGroupDialog(activity!!, items) { + activity?.launchCallIntent(phoneNumbers[it as Int]) + } + } }.apply { fragment_list.adapter = this }