Browse Source

hide checkmarks in block contacts list

cyberta 5 years ago
parent
commit
9b607012cf
1 changed files with 20 additions and 4 deletions
  1. 20 4
      deltachat-ios/Controller/GroupMembersViewController.swift

+ 20 - 4
deltachat-ios/Controller/GroupMembersViewController.swift

@@ -99,6 +99,15 @@ class AddGroupMembersViewController: GroupMembersViewController {
 
 class BlockedContactsViewController: GroupMembersViewController, GroupMemberSelectionDelegate {
 
+    override init() {
+        super.init()
+        enableCheckmarks = false
+    }
+
+    required init?(coder _: NSCoder) {
+        fatalError("init(coder:) has not been implemented")
+    }
+
     override func viewDidLoad() {
         super.viewDidLoad()
         title = String.localized("pref_blocked_contacts")
@@ -115,7 +124,9 @@ class BlockedContactsViewController: GroupMembersViewController, GroupMemberSele
 
     func selected(contactId: Int, selected: Bool) {
         if !selected {
-            let alert = UIAlertController(title: nil, message: String.localized("ask_unblock_contact"), preferredStyle: .actionSheet)
+            let dcContact = DcContact(id: contactId)
+            let title = dcContact.displayName.isEmpty ? dcContact.email : dcContact.displayName
+            let alert = UIAlertController(title: title, message: String.localized("ask_unblock_contact"), preferredStyle: .actionSheet)
             alert.addAction(UIAlertAction(title: String.localized("menu_unblock_contact"), style: .default, handler: { _ in
                 let contact = DcContact(id: contactId)
                 contact.unblock()
@@ -139,6 +150,7 @@ protocol GroupMemberSelectionDelegate: class {
 class GroupMembersViewController: UITableViewController, UISearchResultsUpdating {
     let contactCellReuseIdentifier = "contactCell"
     weak var groupMemberSelectionDelegate: GroupMemberSelectionDelegate?
+    var enableCheckmarks = true
 
     var contactIds: [Int] = [] {
         didSet {
@@ -214,7 +226,7 @@ class GroupMembersViewController: UITableViewController, UISearchResultsUpdating
         let row = indexPath.row
         let contact: ContactWithSearchResults = contactSearchResultByRow(row)
         updateContactCell(cell: cell, contactWithHighlight: contact)
-        cell.accessoryType = selectedContactIds.contains(contactIdByRow(row)) ? .checkmark : .none
+        cell.accessoryType = selectedContactIds.contains(contactIdByRow(row)) && enableCheckmarks ? .checkmark : .none
 
         return cell
     }
@@ -226,11 +238,15 @@ class GroupMembersViewController: UITableViewController, UISearchResultsUpdating
             let contactId = contactIdByRow(row)
             if selectedContactIds.contains(contactId) {
                 selectedContactIds.remove(contactId)
-                cell.accessoryType = .none
+                if enableCheckmarks {
+                    cell.accessoryType = .none
+                }
                 groupMemberSelectionDelegate?.selected(contactId: contactId, selected: false)
             } else {
                 selectedContactIds.insert(contactId)
-                cell.accessoryType = .checkmark
+                if enableCheckmarks {
+                    cell.accessoryType = .checkmark
+                }
                 groupMemberSelectionDelegate?.selected(contactId: contactId, selected: true)
             }
         }