Add icon indicating subscription in call log/call history

Display an icon in the call details showing which connection provider
(subscription) is responsible for the call.

Bug: 15473965

Change-Id: I0c6755864083799b8bafe20c3692b0d943beeee3
diff --git a/src/com/android/dialer/PhoneCallDetailsHelper.java b/src/com/android/dialer/PhoneCallDetailsHelper.java
index f1b6f7f..0531412 100644
--- a/src/com/android/dialer/PhoneCallDetailsHelper.java
+++ b/src/com/android/dialer/PhoneCallDetailsHelper.java
@@ -17,8 +17,10 @@
 package com.android.dialer;
 
 import android.content.res.Resources;
+import android.graphics.drawable.Drawable;
 import android.graphics.Typeface;
 import android.provider.ContactsContract.CommonDataKinds.Phone;
+import android.telecomm.Subscription;
 import android.text.SpannableString;
 import android.text.Spanned;
 import android.text.TextUtils;
@@ -27,6 +29,7 @@
 import android.text.style.StyleSpan;
 import android.view.View;
 import android.widget.TextView;
+import android.widget.ImageView;
 
 import com.android.contacts.common.testing.NeededForTesting;
 import com.android.contacts.common.util.PhoneNumberHelper;
@@ -34,6 +37,7 @@
 import com.android.dialer.calllog.ContactInfo;
 import com.android.dialer.calllog.PhoneNumberDisplayHelper;
 import com.android.dialer.calllog.PhoneNumberUtilsWrapper;
+
 import com.google.common.collect.Lists;
 
 import java.util.ArrayList;
@@ -98,6 +102,14 @@
         // Set the call count, location and date.
         setCallCountAndDate(views, callCount, callLocationAndDate);
 
+        // set the subscription icon if it exists
+        if (details.subscriptionIcon != null) {
+            views.callSubscriptionIcon.setVisibility(View.VISIBLE);
+            views.callSubscriptionIcon.setImageDrawable(details.subscriptionIcon);
+        } else {
+            views.callSubscriptionIcon.setVisibility(View.GONE);
+        }
+
         final CharSequence nameText;
         final CharSequence displayNumber =
             mPhoneNumberHelper.getDisplayNumber(details.number,