From 3d24a8424852220fc4917d018f7e6a331347fc75 Mon Sep 17 00:00:00 2001 From: tibbi Date: Thu, 12 Sep 2019 14:44:37 +0200 Subject: [PATCH] delete contacts from all sources at deleting from the main screen --- .../contacts/pro/adapters/ContactsAdapter.kt | 25 ++++++++++++------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/adapters/ContactsAdapter.kt b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/adapters/ContactsAdapter.kt index 6aba7e95..38cd82b4 100644 --- a/app/src/main/kotlin/com/simplemobiletools/contacts/pro/adapters/ContactsAdapter.kt +++ b/app/src/main/kotlin/com/simplemobiletools/contacts/pro/adapters/ContactsAdapter.kt @@ -176,16 +176,23 @@ class ContactsAdapter(activity: SimpleActivity, var contactItems: ArrayList + ensureBackgroundThread { + contactsToRemove.forEach { + val contactToRemove = it + val duplicates = allContacts.filter { it.id != contactToRemove.id && it.getHashToCompare() == contactToRemove.getHashToCompare() }.toMutableList() as ArrayList + duplicates.add(contactToRemove) + ContactsHelper(activity).deleteContacts(duplicates) + } - activity.runOnUiThread { - if (contactItems.isEmpty()) { - refreshListener?.refreshContacts(ALL_TABS_MASK) - finishActMode() - } else { - removeSelectedItems(positions) - refreshListener?.refreshContacts(CONTACTS_TAB_MASK or FAVORITES_TAB_MASK) + activity.runOnUiThread { + if (contactItems.isEmpty()) { + refreshListener?.refreshContacts(ALL_TABS_MASK) + finishActMode() + } else { + removeSelectedItems(positions) + refreshListener?.refreshContacts(CONTACTS_TAB_MASK or FAVORITES_TAB_MASK) + } } } }