Fixes a visual issue with the Messaging Layout

A messaging group would still look visible if all of its children
were hidden, which is incorrect. We instead regard it as measured too
small.

Test: add message notification with smart reply, click on smart reply
Change-Id: If5174f95038bf16022d935fd05f337969984f0c2
Fixes: 78214933
This commit is contained in:
Selim Cinek
2018-05-02 17:22:20 -07:00
parent 150bafd217
commit 5572657366

View File

@@ -276,9 +276,16 @@ public class MessagingGroup extends LinearLayout implements MessagingLinearLayou
boolean hasNormal = false;
for (int i = mMessageContainer.getChildCount() - 1; i >= 0; i--) {
View child = mMessageContainer.getChildAt(i);
if (child.getVisibility() == GONE) {
continue;
}
if (child instanceof MessagingLinearLayout.MessagingChild) {
int type = ((MessagingLinearLayout.MessagingChild) child).getMeasuredType();
if (type == MEASURED_TOO_SMALL) {
boolean tooSmall = type == MEASURED_TOO_SMALL;
final MessagingLinearLayout.LayoutParams lp =
(MessagingLinearLayout.LayoutParams) child.getLayoutParams();
tooSmall |= lp.hide;
if (tooSmall) {
if (hasNormal) {
return MEASURED_SHORTENED;
} else {