Ensure that the indicator area is set to GONE
We're currently checking for 0 children, which
will never happen since we're using an internal
Space widget which is never removed. This means
the indicator view is still there, with its
associated padding.
BUG: 25680579
Change-Id: Ie41929ad9f67fdf84ed06a47437650611b08cbd1
diff --git a/design/src/android/support/design/widget/TextInputLayout.java b/design/src/android/support/design/widget/TextInputLayout.java
index b583945..318ca6d 100644
--- a/design/src/android/support/design/widget/TextInputLayout.java
+++ b/design/src/android/support/design/widget/TextInputLayout.java
@@ -71,6 +71,7 @@
private Paint mTmpPaint;
private LinearLayout mIndicatorArea;
+ private int mIndicatorsAdded;
private boolean mErrorEnabled;
private TextView mErrorView;
@@ -421,6 +422,7 @@
}
mIndicatorArea.setVisibility(View.VISIBLE);
mIndicatorArea.addView(indicator, index);
+ mIndicatorsAdded++;
}
private void adjustIndicatorPadding() {
@@ -432,7 +434,7 @@
private void removeIndicator(TextView indicator) {
if (mIndicatorArea != null) {
mIndicatorArea.removeView(indicator);
- if (mIndicatorArea.getChildCount() == 0) {
+ if (--mIndicatorsAdded == 0) {
mIndicatorArea.setVisibility(View.GONE);
}
}