Add application name to expanded conversation view
Bug: 150905003
Test: manual
Change-Id: Ibb16717028498c508beda423a76375499a6f6ad9
diff --git a/core/java/com/android/internal/widget/ConversationLayout.java b/core/java/com/android/internal/widget/ConversationLayout.java
index f9aae0f..49cf3e0 100644
--- a/core/java/com/android/internal/widget/ConversationLayout.java
+++ b/core/java/com/android/internal/widget/ConversationLayout.java
@@ -133,6 +133,7 @@
private boolean mExpandable = true;
private int mContentMarginEnd;
private Rect mMessagingClipRect;
+ private TextView mAppName;
public ConversationLayout(@NonNull Context context) {
super(context);
@@ -202,6 +203,7 @@
R.string.conversation_title_fallback_one_to_one);
mFallbackGroupChatName = getResources().getString(
R.string.conversation_title_fallback_group_chat);
+ mAppName = findViewById(R.id.app_name_text);
}
@RemotableViewMethod
@@ -384,6 +386,7 @@
}
updateIconPositionAndSize();
updateImageMessages();
+ updateAppName();
}
private void updateImageMessages() {
@@ -462,6 +465,10 @@
topView.setImageIcon(secondLastIcon);
}
+ private void updateAppName() {
+ mAppName.setVisibility(mIsCollapsed ? GONE : VISIBLE);
+ }
+
/**
* update the icon position and sizing
*/
diff --git a/core/res/res/layout/notification_template_material_conversation.xml b/core/res/res/layout/notification_template_material_conversation.xml
index f79ea62..0c4be1a 100644
--- a/core/res/res/layout/notification_template_material_conversation.xml
+++ b/core/res/res/layout/notification_template_material_conversation.xml
@@ -174,6 +174,17 @@
/>
</LinearLayout>
+ <!-- App Name -->
+ <TextView
+ android:id="@+id/app_name_text"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_marginStart="@dimen/conversation_content_start"
+ android:paddingBottom="16dp"
+ android:textSize="12sp"
+ android:textAppearance="@style/TextAppearance.DeviceDefault.Notification"
+ />
+
<!-- Messages -->
<com.android.internal.widget.MessagingLinearLayout
android:id="@+id/notification_messaging"
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationConversationTemplateViewWrapper.kt b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationConversationTemplateViewWrapper.kt
index 53b00f0..e70124c 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationConversationTemplateViewWrapper.kt
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/wrapper/NotificationConversationTemplateViewWrapper.kt
@@ -52,28 +52,22 @@
private lateinit var imageMessageContainer: ViewGroup
private lateinit var messagingLinearLayout: MessagingLinearLayout
private lateinit var importanceRing: View
+ private lateinit var appName: View
private fun resolveViews() {
messagingLinearLayout = conversationLayout.messagingLinearLayout
imageMessageContainer = conversationLayout.imageMessageContainer
- conversationIcon = conversationLayout.requireViewById(
- com.android.internal.R.id.conversation_icon
- )
- conversationBadge = conversationLayout.requireViewById(
- com.android.internal.R.id.conversation_icon_badge
- )
- conversationBadgeBg = conversationLayout.requireViewById(
- com.android.internal.R.id.conversation_icon_badge_bg
- )
- expandButton = conversationLayout.requireViewById(
- com.android.internal.R.id.expand_button
- )
- expandButtonContainer = conversationLayout.requireViewById(
- com.android.internal.R.id.expand_button_container
- )
- importanceRing = conversationLayout.requireViewById(
- com.android.internal.R.id.conversation_icon_badge_ring
- )
+ with(conversationLayout) {
+ conversationIcon = requireViewById(com.android.internal.R.id.conversation_icon)
+ conversationBadge = requireViewById(com.android.internal.R.id.conversation_icon_badge)
+ conversationBadgeBg =
+ requireViewById(com.android.internal.R.id.conversation_icon_badge_bg)
+ expandButton = requireViewById(com.android.internal.R.id.expand_button)
+ expandButtonContainer =
+ requireViewById(com.android.internal.R.id.expand_button_container)
+ importanceRing = requireViewById(com.android.internal.R.id.conversation_icon_badge_ring)
+ appName = requireViewById(com.android.internal.R.id.app_name_text)
+ }
}
override fun onContentUpdated(row: ExpandableNotificationRow) {
@@ -87,7 +81,7 @@
// This also clears the existing types
super.updateTransformedTypes()
- addTransformedViews(messagingLinearLayout)
+ addTransformedViews(messagingLinearLayout, appName)
// Let's ignore the image message container since that is transforming as part of the
// messages already