Merge "Always use Shortcut Icon in conversation if available" into rvc-dev am: cc1937581a am: 4c42f40c1f

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11662920

Change-Id: Ifcdbc8f129e1f7463e98a190e0dc1d66b95980e4
This commit is contained in:
Steve Elliott
2020-06-02 18:53:32 +00:00
committed by Automerger Merge Worker
2 changed files with 19 additions and 11 deletions

View File

@@ -7625,9 +7625,8 @@ public class Notification implements Parcelable
}
boolean isConversationLayout = mConversationType != CONVERSATION_TYPE_LEGACY;
boolean isImportantConversation = mConversationType == CONVERSATION_TYPE_IMPORTANT;
Icon largeIcon = isConversationLayout && mShortcutIcon != null
? mShortcutIcon
: mBuilder.mN.mLargeIcon;
Icon conversationIcon = mShortcutIcon;
Icon largeIcon = mBuilder.mN.mLargeIcon;
TemplateBindResult bindResult = new TemplateBindResult();
StandardTemplateParams p = mBuilder.mParams.reset()
.hasProgress(false)
@@ -7671,6 +7670,8 @@ public class Notification implements Parcelable
contentView.setCharSequence(R.id.status_bar_latest_event_content,
"setConversationTitle", conversationTitle);
if (isConversationLayout) {
contentView.setIcon(R.id.status_bar_latest_event_content,
"setConversationIcon", conversationIcon);
contentView.setBoolean(R.id.status_bar_latest_event_content,
"setIsImportantConversation", isImportantConversation);
}

View File

@@ -480,23 +480,25 @@ public class ConversationLayout extends FrameLayout
// (This usually happens for most 1:1 conversations)
conversationText = messagingGroup.getSenderName();
}
Icon avatarIcon = messagingGroup.getAvatarIcon();
if (avatarIcon == null) {
avatarIcon = createAvatarSymbol(conversationText, "", mLayoutColor);
if (mConversationIcon == null) {
Icon avatarIcon = messagingGroup.getAvatarIcon();
if (avatarIcon == null) {
avatarIcon = createAvatarSymbol(conversationText, "", mLayoutColor);
}
mConversationIcon = avatarIcon;
}
mConversationIcon = avatarIcon;
mConversationIconView.setImageIcon(mConversationIcon);
break;
}
}
} else {
if (mLargeIcon != null) {
if (mConversationIcon == null && mLargeIcon != null) {
mConversationIcon = mLargeIcon;
}
if (mConversationIcon != null) {
mConversationIconView.setVisibility(VISIBLE);
mConversationFacePile.setVisibility(GONE);
mConversationIconView.setImageIcon(mLargeIcon);
mConversationIconView.setImageIcon(mConversationIcon);
} else {
mConversationIcon = null;
mConversationIconView.setVisibility(GONE);
// This will also inflate it!
mConversationFacePile.setVisibility(VISIBLE);
@@ -709,6 +711,11 @@ public class ConversationLayout extends FrameLayout
mLargeIcon = largeIcon;
}
@RemotableViewMethod
public void setConversationIcon(Icon conversationIcon) {
mConversationIcon = conversationIcon;
}
/**
* Sets the conversation title of this conversation.
*