Don't send empty contact card with just avatar

// FREEBIE
This commit is contained in:
Michael Kirk 2018-05-17 07:05:30 -04:00
parent ddcca73aa1
commit f2750d18c6

View file

@ -15,6 +15,8 @@ public protocol ContactShareApprovalViewControllerDelegate: class {
protocol ContactShareField: class {
var isAvatar: Bool { get }
func localizedLabel() -> String
func isIncluded() -> Bool
@ -32,6 +34,8 @@ class ContactShareFieldBase<ContactFieldType: OWSContactField>: NSObject, Contac
private var isIncludedFlag = true
var isAvatar: Bool { return false }
required init(_ value: ContactFieldType) {
self.value = value
@ -124,6 +128,8 @@ class OWSContactAvatar: NSObject, OWSContactField {
}
class ContactShareAvatarField: ContactShareFieldBase<OWSContactAvatar> {
override var isAvatar: Bool { return true }
override func applyToContact(contact: ContactShareViewModel) {
assert(isIncluded())
@ -327,7 +333,7 @@ public class ContactShareApprovalViewController: OWSViewController, EditContactS
func isAtLeastOneFieldSelected() -> Bool {
for fieldView in fieldViews {
if fieldView.field.isIncluded() {
if fieldView.field.isIncluded(), !fieldView.field.isAvatar {
return true
}
}