From 6f0c1a975bd1b215e6533647dfae196fc8d414f7 Mon Sep 17 00:00:00 2001 From: Matthew Chen Date: Fri, 11 May 2018 10:50:11 -0400 Subject: [PATCH] Fix build warnings. --- SignalMessaging/contacts/OWSContactsManager.m | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/SignalMessaging/contacts/OWSContactsManager.m b/SignalMessaging/contacts/OWSContactsManager.m index 2cc9e739e..e56e440d1 100644 --- a/SignalMessaging/contacts/OWSContactsManager.m +++ b/SignalMessaging/contacts/OWSContactsManager.m @@ -19,7 +19,6 @@ #import #import -@import AddressBook; @import Contacts; NSString *const OWSContactsManagerSignalAccountsDidChangeNotification @@ -570,9 +569,9 @@ NSString *const OWSContactsManagerSignalAccountsDidChangeNotification NSDictionary *normalFontAttributes = @{ NSFontAttributeName : font, NSForegroundColorAttributeName : [UIColor ows_darkGrayColor] }; NSDictionary *firstNameAttributes - = (ABPersonGetSortOrdering() == kABPersonSortByFirstName ? boldFontAttributes : normalFontAttributes); + = (self.shouldSortByGivenName ? boldFontAttributes : normalFontAttributes); NSDictionary *lastNameAttributes - = (ABPersonGetSortOrdering() == kABPersonSortByFirstName ? normalFontAttributes : boldFontAttributes); + = (self.shouldSortByGivenName ? normalFontAttributes : boldFontAttributes); NSString *cachedFirstName = [self cachedFirstNameForRecipientId:recipientId]; NSString *cachedLastName = [self cachedLastNameForRecipientId:recipientId]; @@ -585,8 +584,12 @@ NSString *const OWSContactsManagerSignalAccountsDidChangeNotification NSAttributedString *lastName = [[NSAttributedString alloc] initWithString:cachedLastName attributes:lastNameAttributes]; + CNMutableContact *formatContact = [CNMutableContact new]; + formatContact.givenName = firstName.string; + formatContact.familyName = lastName.string; + CNContactDisplayNameOrder nameOrder = [CNContactFormatter nameOrderForContact:formatContact]; NSAttributedString *_Nullable leftName, *_Nullable rightName; - if (ABPersonGetCompositeNameFormat() == kABPersonCompositeNameFormatFirstNameFirst) { + if (nameOrder == CNContactDisplayNameOrderGivenNameFirst) { leftName = firstName; rightName = lastName; } else { @@ -812,11 +815,16 @@ NSString *const OWSContactsManagerSignalAccountsDidChangeNotification }; } +- (BOOL)shouldSortByGivenName +{ + return [[CNContactsUserDefaults sharedDefaults] sortOrder] == CNContactSortOrderGivenName; +} + - (NSString *)comparableNameForSignalAccount:(SignalAccount *)signalAccount { NSString *_Nullable name; if (signalAccount.contact) { - if (ABPersonGetSortOrdering() == kABPersonSortByFirstName) { + if (self.shouldSortByGivenName) { name = signalAccount.contact.comparableNameFirstLast; } else { name = signalAccount.contact.comparableNameLastFirst;