Correctly show the contact's photo in CallDetailsActivity when launched from the new call log.

Bug: 70218437,71867391
Test: ModulesTest & Manual
PiperOrigin-RevId: 182233967
Change-Id: I6eb4bf236230eee6bbecc99b128fef5afddfd1e9
diff --git a/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java b/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
index 604a5e8..647c6ed 100644
--- a/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
+++ b/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
@@ -136,9 +136,9 @@
     ContactPhotoManager.getInstance(context)
         .loadDialerThumbnailOrPhoto(
             contactPhoto,
-            contact.hasContactUri() ? Uri.parse(contact.getContactUri()) : null,
+            contact.getContactUri().isEmpty() ? null : Uri.parse(contact.getContactUri()),
             contact.getPhotoId(),
-            contact.hasPhotoUri() ? Uri.parse(contact.getPhotoUri()) : null,
+            contact.getPhotoUri().isEmpty() ? null : Uri.parse(contact.getPhotoUri()),
             contact.getNameOrNumber(),
             contact.getContactType());
 
diff --git a/java/com/android/dialer/calllog/ui/menu/Modules.java b/java/com/android/dialer/calllog/ui/menu/Modules.java
index 92dd411..fd0606e 100644
--- a/java/com/android/dialer/calllog/ui/menu/Modules.java
+++ b/java/com/android/dialer/calllog/ui/menu/Modules.java
@@ -23,13 +23,13 @@
 import com.android.dialer.calldetails.CallDetailsActivity;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.calllog.model.CoalescedRow;
+import com.android.dialer.calllogutils.CallLogContactTypes;
 import com.android.dialer.calllogutils.PhoneAccountUtils;
 import com.android.dialer.contactactions.ContactActionModule;
 import com.android.dialer.contactactions.DividerModule;
 import com.android.dialer.contactactions.IntentModule;
 import com.android.dialer.contactactions.SharedModules;
 import com.android.dialer.dialercontact.DialerContact;
-import com.android.dialer.lettertile.LetterTileDrawable;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -125,23 +125,19 @@
     DialerContact.Builder dialerContactBuilder =
         DialerContact.newBuilder()
             .setNumber(originalNumber)
-            .setContactType(LetterTileDrawable.TYPE_DEFAULT) // TODO(zachh): Use proper type.
+            .setContactType(CallLogContactTypes.getContactType(row))
             .setPhotoId(row.numberAttributes().getPhotoId());
 
-    if (!TextUtils.isEmpty(row.numberAttributes().getName())) {
+    if (!row.numberAttributes().getName().isEmpty()) {
       dialerContactBuilder.setNameOrNumber(row.numberAttributes().getName());
     } else if (!TextUtils.isEmpty(originalNumber)) {
       dialerContactBuilder.setNameOrNumber(originalNumber);
     }
-    if (row.numberAttributes().hasNumberTypeLabel()) {
-      dialerContactBuilder.setNumberLabel(row.numberAttributes().getNumberTypeLabel());
-    }
-    if (row.numberAttributes().hasPhotoUri()) {
-      dialerContactBuilder.setPhotoUri(row.numberAttributes().getPhotoUri());
-    }
-    if (row.numberAttributes().hasLookupUri()) {
-      dialerContactBuilder.setContactUri(row.numberAttributes().getLookupUri());
-    }
+
+    dialerContactBuilder.setNumberLabel(row.numberAttributes().getNumberTypeLabel());
+    dialerContactBuilder.setPhotoUri(row.numberAttributes().getPhotoUri());
+    dialerContactBuilder.setContactUri(row.numberAttributes().getLookupUri());
+
     if (row.formattedNumber() != null) {
       dialerContactBuilder.setDisplayNumber(row.formattedNumber());
     }