Transferring directory display name logic to directory providers
Bug: 3396886
Change-Id: I67cb28bf6df780eb5bea433f9681da5542d3eca9
diff --git a/src/com/android/contacts/detail/ContactDetailHeaderView.java b/src/com/android/contacts/detail/ContactDetailHeaderView.java
index c3e2d98..4b211b6 100644
--- a/src/com/android/contacts/detail/ContactDetailHeaderView.java
+++ b/src/com/android/contacts/detail/ContactDetailHeaderView.java
@@ -282,8 +282,11 @@
mAttributionView.setText(R.string.indicator_joined_contact);
mAttributionView.setVisibility(View.VISIBLE);
} else if (isDirectoryEntry) {
- String text = getContext().getString(R.string.contact_directory_description,
- buildDirectoryName(directoryType, directoryDisplayName));
+ String displayName = !TextUtils.isEmpty(directoryDisplayName)
+ ? directoryDisplayName
+ : directoryType;
+ String text = getContext().getString(
+ R.string.contact_directory_description, displayName);
mAttributionView.setText(text);
mAttributionView.setVisibility(View.VISIBLE);
} else {
@@ -291,23 +294,6 @@
}
}
- private CharSequence buildDirectoryName(String directoryType, String directoryName) {
- String title;
- if (!TextUtils.isEmpty(directoryName)) {
- title = directoryName;
- // TODO: STOPSHIP - remove this once this is done by both directory providers
- int atIndex = title.indexOf('@');
- if (atIndex != -1 && atIndex < title.length() - 2) {
- final char firstLetter = Character.toUpperCase(title.charAt(atIndex + 1));
- title = firstLetter + title.substring(atIndex + 2);
- }
- } else {
- title = directoryType;
- }
-
- return title;
- }
-
@Override
public void onClick(View view) {
switch (view.getId()) {
diff --git a/src/com/android/contacts/list/ContactEntryListAdapter.java b/src/com/android/contacts/list/ContactEntryListAdapter.java
index e61e00c..44e09b0 100644
--- a/src/com/android/contacts/list/ContactEntryListAdapter.java
+++ b/src/com/android/contacts/list/ContactEntryListAdapter.java
@@ -502,8 +502,11 @@
displayNameTextView.setText(null);
} else {
labelTextView.setText(R.string.directory_search_label);
- displayNameTextView.setText(buildDirectoryName(directoryPartition.getDirectoryType(),
- directoryPartition.getDisplayName()));
+ String directoryName = directoryPartition.getDisplayName();
+ String displayName = !TextUtils.isEmpty(directoryName)
+ ? directoryName
+ : directoryPartition.getDirectoryType();
+ displayNameTextView.setText(displayName);
}
TextView countText = (TextView)view.findViewById(R.id.count);
@@ -522,23 +525,6 @@
}
}
- private CharSequence buildDirectoryName(String directoryType, String directoryName) {
- String title;
- if (!TextUtils.isEmpty(directoryName)) {
- title = directoryName;
- // TODO: STOPSHIP - remove this once this is done by both directory providers
- int atIndex = title.indexOf('@');
- if (atIndex != -1 && atIndex < title.length() - 2) {
- final char firstLetter = Character.toUpperCase(title.charAt(atIndex + 1));
- title = firstLetter + title.substring(atIndex + 2);
- }
- } else {
- title = directoryType;
- }
-
- return title;
- }
-
// TODO: fix PluralRules to handle zero correctly and use Resources.getQuantityText directly
public String getQuantityText(int count, int zeroResourceId, int pluralResourceId) {
if (count == 0) {