diff --git a/core/java/com/android/internal/widget/MessagingGroup.java b/core/java/com/android/internal/widget/MessagingGroup.java index 4104b6ca9d2a7..15b2718bea421 100644 --- a/core/java/com/android/internal/widget/MessagingGroup.java +++ b/core/java/com/android/internal/widget/MessagingGroup.java @@ -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 {