Fix phone number comparison in Phone Favorites.
This switches to using ContactsUtils.shouldCollapse for determining
whether we should combine the two numbers.
Bug 5294289
Change-Id: Id1ec369cfe698b52186ff392255d789458622e9d
diff --git a/src/com/android/contacts/ContactsUtils.java b/src/com/android/contacts/ContactsUtils.java
index f1f73ed..4de62b6 100644
--- a/src/com/android/contacts/ContactsUtils.java
+++ b/src/com/android/contacts/ContactsUtils.java
@@ -102,8 +102,8 @@
* considered equal for collapsing in the GUI. For caller-id, use
* {@link PhoneNumberUtils#compare(Context, String, String)} instead
*/
- public static final boolean shouldCollapse(Context context, CharSequence mimetype1,
- CharSequence data1, CharSequence mimetype2, CharSequence data2) {
+ public static final boolean shouldCollapse(CharSequence mimetype1, CharSequence data1,
+ CharSequence mimetype2, CharSequence data2) {
// different mimetypes? don't collapse
if (!TextUtils.equals(mimetype1, mimetype2)) return false;
diff --git a/src/com/android/contacts/detail/ContactDetailFragment.java b/src/com/android/contacts/detail/ContactDetailFragment.java
index 775b50a..e111620 100644
--- a/src/com/android/contacts/detail/ContactDetailFragment.java
+++ b/src/com/android/contacts/detail/ContactDetailFragment.java
@@ -1348,8 +1348,7 @@
return false;
}
- if (!ContactsUtils.shouldCollapse(context, mimetype, data, entry.mimetype,
- entry.data)) {
+ if (!ContactsUtils.shouldCollapse(mimetype, data, entry.mimetype, entry.data)) {
return false;
}
diff --git a/src/com/android/contacts/interactions/PhoneNumberInteraction.java b/src/com/android/contacts/interactions/PhoneNumberInteraction.java
index 918dac0..a42456c 100644
--- a/src/com/android/contacts/interactions/PhoneNumberInteraction.java
+++ b/src/com/android/contacts/interactions/PhoneNumberInteraction.java
@@ -19,6 +19,7 @@
import com.android.contacts.Collapser;
import com.android.contacts.Collapser.Collapsible;
import com.android.contacts.ContactSaveService;
+import com.android.contacts.ContactsUtils;
import com.android.contacts.R;
import com.android.contacts.model.AccountType;
import com.android.contacts.model.AccountType.StringInflater;
@@ -123,18 +124,8 @@
}
public boolean shouldCollapseWith(PhoneItem phoneItem) {
- try {
- PhoneNumberUtil util = PhoneNumberUtil.getInstance();
- PhoneNumber phoneNumber1 = util.parse(phoneNumber, "ZZ" /* Unknown */);
- PhoneNumber phoneNumber2 = util.parse(phoneItem.phoneNumber, "ZZ" /* Unknown */);
- MatchType matchType = util.isNumberMatch(phoneNumber1, phoneNumber2);
- if (matchType == MatchType.SHORT_NSN_MATCH) {
- return true;
- }
- } catch (NumberParseException e) {
- return TextUtils.equals(phoneNumber, phoneItem.phoneNumber);
- }
- return false;
+ return ContactsUtils.shouldCollapse(Phone.CONTENT_ITEM_TYPE, phoneNumber,
+ Phone.CONTENT_ITEM_TYPE, phoneItem.phoneNumber);
}
@Override
diff --git a/src/com/android/contacts/quickcontact/DataAction.java b/src/com/android/contacts/quickcontact/DataAction.java
index 2066997..13e824e 100644
--- a/src/com/android/contacts/quickcontact/DataAction.java
+++ b/src/com/android/contacts/quickcontact/DataAction.java
@@ -294,8 +294,7 @@
return false;
}
DataAction that = (DataAction)t;
- if (!ContactsUtils.shouldCollapse(mContext, mMimeType, mBody, that.mMimeType,
- that.mBody)) {
+ if (!ContactsUtils.shouldCollapse(mMimeType, mBody, that.mMimeType, that.mBody)) {
return false;
}
if (!TextUtils.equals(mMimeType, that.mMimeType)