diff options
Diffstat (limited to 'src/com/android/dialer/calllog/CallLogAdapter.java')
-rw-r--r-- | src/com/android/dialer/calllog/CallLogAdapter.java | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/src/com/android/dialer/calllog/CallLogAdapter.java b/src/com/android/dialer/calllog/CallLogAdapter.java index d9e2744b6..8fee28875 100644 --- a/src/com/android/dialer/calllog/CallLogAdapter.java +++ b/src/com/android/dialer/calllog/CallLogAdapter.java @@ -23,7 +23,6 @@ import android.content.SharedPreferences; import android.content.res.Resources; import android.database.Cursor; import android.net.Uri; -import android.provider.ContactsContract.CommonDataKinds.Phone; import android.support.v7.widget.RecyclerView; import android.os.Bundle; import android.os.Trace; @@ -46,6 +45,7 @@ import android.view.accessibility.AccessibilityEvent; import com.android.contacts.common.CallUtil; import com.android.contacts.common.ClipboardUtils; +import com.android.contacts.common.util.ContactDisplayUtils; import com.android.contacts.common.util.PermissionsUtil; import com.android.dialer.DialtactsActivity; import com.android.dialer.PhoneCallDetails; @@ -58,6 +58,8 @@ import com.android.dialer.deeplink.DeepLinkRequest; import com.android.dialer.util.DialerUtils; import com.android.dialer.util.PhoneNumberUtil; import com.android.dialer.voicemail.VoicemailPlaybackPresenter; +import com.android.phone.common.incall.CallMethodInfo; +import com.android.phone.common.incall.DialerDataSubscription; import com.cyanogen.ambient.deeplink.DeepLink; import com.cyanogen.ambient.incall.extension.OriginCodes; @@ -502,7 +504,7 @@ public class CallLogAdapter extends GroupingListAdapter c.getString(CallLogQuery.ACCOUNT_COMPONENT_NAME), c.getString(CallLogQuery.ACCOUNT_ID)); final String countryIso = c.getString(CallLogQuery.COUNTRY_ISO); - final ContactInfo cachedContactInfo = mContactInfoHelper.getContactInfo(c); + final ContactInfo cachedContactInfo = mContactInfoHelper.getContactInfo(mContext, c); final boolean isVoicemailNumber = mTelecomCallLogCache.isVoicemailNumber(accountHandle, number); @@ -558,8 +560,6 @@ public class CallLogAdapter extends GroupingListAdapter // Stash away the Ids of the calls so that we can support deleting a row in the call log. views.callIds = getCallIds(c, count); views.isBusiness = mContactInfoHelper.isBusiness(info.sourceType); - views.numberType = (String) Phone.getTypeLabel(mContext.getResources(), details.numberType, - details.numberLabel); String component = c.getString(CallLogQuery.PLUGIN_PACKAGE_NAME); if (!TextUtils.isEmpty(component)) { views.inCallComponentName = ComponentName.unflattenFromString(component); @@ -577,7 +577,23 @@ public class CallLogAdapter extends GroupingListAdapter views.phoneCallDetailsViews.noteIconView.setVisibility(View.GONE); } - views.mDeepLinkPresenter.prepareUi(number); + String callMethodName = null; + if (views.inCallComponentName != null) { + CallMethodInfo cmi = DialerDataSubscription.get(mContext) + .getPluginIfExists(views.inCallComponentName); + if (cmi != null) { + callMethodName = cmi.mName; + } + } + + final String label = ContactDisplayUtils.getLabelForCall(mContext, number, + details.numberType, details.numberLabel, callMethodName); + + views.numberType = label; + details.numberLabel = label; + + views.mDeepLinkPresenter.prepareUi(number); + // Check if the day group has changed and display a header if necessary. int currentGroup = getDayGroupForCall(views.rowId); int previousGroup = getPreviousDayGroup(c); |