Updating PhotoInfo and GlidePhotoManager to support conference calls.

Bug: 76205353
Test: GlidePhotoManagerImplTest
PiperOrigin-RevId: 198872893
Change-Id: I7957078a63af2455e439286b8d2ef719d4c9ff4e
diff --git a/java/com/android/dialer/glidephotomanager/impl/GlidePhotoManagerImpl.java b/java/com/android/dialer/glidephotomanager/impl/GlidePhotoManagerImpl.java
index eeeae13..bd9cc31 100644
--- a/java/com/android/dialer/glidephotomanager/impl/GlidePhotoManagerImpl.java
+++ b/java/com/android/dialer/glidephotomanager/impl/GlidePhotoManagerImpl.java
@@ -143,7 +143,7 @@
             photoInfo.getIsSpam(),
             photoInfo.getIsBusiness(),
             TelecomManager.PRESENTATION_ALLOWED, // TODO(twyen):implement
-            false)); // TODO(twyen):implement
+            photoInfo.getIsConference()));
     return letterTileDrawable;
   }
 
diff --git a/java/com/android/dialer/glidephotomanager/photo_info.proto b/java/com/android/dialer/glidephotomanager/photo_info.proto
index 6fa21d8..07908d8 100644
--- a/java/com/android/dialer/glidephotomanager/photo_info.proto
+++ b/java/com/android/dialer/glidephotomanager/photo_info.proto
@@ -9,7 +9,7 @@
 
 // Contains information associated with a number, which is used to create the
 // photo.
-// Next ID: 12
+// Next ID: 13
 message PhotoInfo {
   // The display name of the number.
   optional string name = 1;
@@ -44,4 +44,7 @@
 
   // Whether the photo should be badged as RTT call.
   optional bool is_rtt = 11;
+
+  // Whether to show conference call icon instead of contact icon.
+  optional bool is_conference = 12;
 }
diff --git a/java/com/android/incallui/contactgrid/ContactGridManager.java b/java/com/android/incallui/contactgrid/ContactGridManager.java
index e375bd5..189f6fe 100644
--- a/java/com/android/incallui/contactgrid/ContactGridManager.java
+++ b/java/com/android/incallui/contactgrid/ContactGridManager.java
@@ -318,7 +318,8 @@
         PhotoInfo.newBuilder()
             .setIsBusiness(primaryInfo.photoType() == ContactPhotoType.BUSINESS)
             .setIsVoicemail(primaryCallState.isVoiceMailNumber())
-            .setIsSpam(primaryInfo.isSpam());
+            .setIsSpam(primaryInfo.isSpam())
+            .setIsConference(primaryCallState.isConference());
 
     // Contact has a name, that is a number.
     if (primaryInfo.nameIsNumber() && primaryInfo.number() != null) {