diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/GroupContactsActivity.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/GroupContactsActivity.kt index 462d65bf..356cb380 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/GroupContactsActivity.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/activities/GroupContactsActivity.kt @@ -70,7 +70,7 @@ class GroupContactsActivity : SimpleActivity(), RemoveFromGroupListener, Refresh } private fun fabClicked() { - SelectContactsDialog(this, allContacts, true, groupContacts) { addedContacts, removedContacts -> + SelectContactsDialog(this, allContacts, true, false, groupContacts) { addedContacts, removedContacts -> ensureBackgroundThread { addContactsToGroup(addedContacts, group.id!!) removeContactsFromGroup(removedContacts, group.id!!) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/dialogs/SelectContactsDialog.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/dialogs/SelectContactsDialog.kt index d6148983..f55ab53d 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/dialogs/SelectContactsDialog.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/dialogs/SelectContactsDialog.kt @@ -11,8 +11,8 @@ import com.simplemobiletools.contacts.pro.extensions.getVisibleContactSources import com.simplemobiletools.contacts.pro.models.Contact import kotlinx.android.synthetic.main.layout_select_contact.view.* -class SelectContactsDialog(val activity: SimpleActivity, initialContacts: ArrayList, val allowSelectMultiple: Boolean, selectContacts: ArrayList? = null, - val callback: (addedContacts: ArrayList, removedContacts: ArrayList) -> Unit) { +class SelectContactsDialog(val activity: SimpleActivity, initialContacts: ArrayList, val allowSelectMultiple: Boolean, val showOnlyContactsWithNumber: Boolean, + selectContacts: ArrayList? = null, val callback: (addedContacts: ArrayList, removedContacts: ArrayList) -> Unit) { private var dialog: AlertDialog? = null private var view = activity.layoutInflater.inflate(R.layout.layout_select_contact, null) private var initiallySelectedContacts = ArrayList() @@ -23,6 +23,10 @@ class SelectContactsDialog(val activity: SimpleActivity, initialContacts: ArrayL val contactSources = activity.getVisibleContactSources() allContacts = allContacts.filter { contactSources.contains(it.source) } as ArrayList + if (showOnlyContactsWithNumber) { + allContacts = allContacts.filter { it.phoneNumbers.isNotEmpty() }.toMutableList() as ArrayList + } + initiallySelectedContacts = allContacts.filter { it.starred == 1 } as ArrayList } else { initiallySelectedContacts = selectContacts diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/fragments/FavoritesFragment.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/fragments/FavoritesFragment.kt index 53d9feef..2502edd8 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/fragments/FavoritesFragment.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/fragments/FavoritesFragment.kt @@ -19,7 +19,7 @@ class FavoritesFragment(context: Context, attributeSet: AttributeSet) : MyViewPa } private fun showAddFavoritesDialog() { - SelectContactsDialog(activity!!, allContacts, true) { addedContacts, removedContacts -> + SelectContactsDialog(activity!!, allContacts, true, false) { addedContacts, removedContacts -> ContactsHelper(activity as SimpleActivity).apply { addFavorites(addedContacts) removeFavorites(removedContacts)