From 853a6a8e879a13a3b52319fed1a7f32b03a11bd2 Mon Sep 17 00:00:00 2001 From: tibbi Date: Tue, 27 Aug 2019 11:02:56 +0200 Subject: [PATCH] fix #391, show more detailed info at deleting elements --- .../contacts/pro/adapters/ContactsAdapter.kt | 13 ++++++++++++- .../contacts/pro/adapters/GroupsAdapter.kt | 15 ++++++++++++++- 2 files changed, 26 insertions(+), 2 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 02199b49..c1e19c88 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 @@ -151,7 +151,18 @@ class ContactsAdapter(activity: SimpleActivity, var contactItems: ArrayList, val } private fun askConfirmDelete() { - ConfirmationDialog(activity) { + val itemsCnt = selectedKeys.size + val firstItem = getSelectedItems().first() + val items = if (itemsCnt == 1) { + "\"${firstItem.title}\"" + } else { + resources.getQuantityString(R.plurals.delete_groups, itemsCnt, itemsCnt) + } + + val baseString = R.string.delete_contacts_confirmation + val question = String.format(resources.getString(baseString), items) + + ConfirmationDialog(activity, question) { ensureBackgroundThread { deleteGroups() } @@ -135,6 +146,8 @@ class GroupsAdapter(activity: SimpleActivity, var groups: ArrayList, val } } + private fun getSelectedItems() = groups.filter { selectedKeys.contains(it.id?.toInt()) } as ArrayList + private fun setupView(view: View, group: Group) { view.apply { group_frame?.isSelected = selectedKeys.contains(group.id!!.toInt())