summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/searchfragment/cp2/ContactFilterCursor.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/dialer/searchfragment/cp2/ContactFilterCursor.java')
-rw-r--r--java/com/android/dialer/searchfragment/cp2/ContactFilterCursor.java14
1 files changed, 9 insertions, 5 deletions
diff --git a/java/com/android/dialer/searchfragment/cp2/ContactFilterCursor.java b/java/com/android/dialer/searchfragment/cp2/ContactFilterCursor.java
index df67b762f..166902b2b 100644
--- a/java/com/android/dialer/searchfragment/cp2/ContactFilterCursor.java
+++ b/java/com/android/dialer/searchfragment/cp2/ContactFilterCursor.java
@@ -132,8 +132,8 @@ final class ContactFilterCursor implements Cursor {
}
private static List<Cp2Contact> coalesceContacts(List<Cp2Contact> contactsWithSameContactId) {
- String companyName = null;
- String nickName = null;
+ StringBuilder companyName = new StringBuilder();
+ StringBuilder nickName = new StringBuilder();
List<Cp2Contact> phoneContacts = new ArrayList<>();
for (Cp2Contact contact : contactsWithSameContactId) {
if (contact.mimeType().equals(Phone.CONTENT_ITEM_TYPE)) {
@@ -141,11 +141,11 @@ final class ContactFilterCursor implements Cursor {
} else if (contact.mimeType().equals(Organization.CONTENT_ITEM_TYPE)) {
// Since a contact can have more than one company name but they aren't visible to the user
// in our search UI, we can lazily concatenate them together to make them all searchable.
- companyName += " " + contact.companyName();
+ companyName.append(" ").append(contact.companyName());
} else if (contact.mimeType().equals(Nickname.CONTENT_ITEM_TYPE)) {
// Since a contact can have more than one nickname but they aren't visible to the user
// in our search UI, we can lazily concatenate them together to make them all searchable.
- nickName += " " + contact.nickName();
+ nickName.append(" ").append(contact.nickName());
}
}
@@ -154,7 +154,11 @@ final class ContactFilterCursor implements Cursor {
List<Cp2Contact> coalescedContacts = new ArrayList<>();
for (Cp2Contact phoneContact : phoneContacts) {
coalescedContacts.add(
- phoneContact.toBuilder().setCompanyName(companyName).setNickName(nickName).build());
+ phoneContact
+ .toBuilder()
+ .setCompanyName(companyName.length() == 0 ? null : companyName.toString())
+ .setNickName(nickName.length() == 0 ? null : nickName.toString())
+ .build());
}
return coalescedContacts;
}