diff options
Diffstat (limited to 'core/java/android/widget/RelativeLayout.java')
| -rw-r--r-- | core/java/android/widget/RelativeLayout.java | 29 |
1 files changed, 12 insertions, 17 deletions
diff --git a/core/java/android/widget/RelativeLayout.java b/core/java/android/widget/RelativeLayout.java index f724e52b198c..f940226a1a60 100644 --- a/core/java/android/widget/RelativeLayout.java +++ b/core/java/android/widget/RelativeLayout.java @@ -695,20 +695,6 @@ public class RelativeLayout extends ViewGroup { params.topMargin, params.bottomMargin, mPaddingTop, mPaddingBottom, myHeight); - if (params.mPreviousWidthSpec == childWidthMeasureSpec && !child.isLayoutRequested()) { - switch (MeasureSpec.getMode(childHeightMeasureSpec)) { - case MeasureSpec.EXACTLY: - if (child.getMeasuredHeight() == MeasureSpec.getSize(childHeightMeasureSpec)) { - return; - } - break; - case MeasureSpec.AT_MOST: - if (child.getMeasuredHeight() <= MeasureSpec.getSize(childHeightMeasureSpec)) { - return; - } - break; - } - } child.measure(childWidthMeasureSpec, childHeightMeasureSpec); } @@ -740,7 +726,6 @@ public class RelativeLayout extends ViewGroup { childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(maxHeight, MeasureSpec.AT_MOST); } child.measure(childWidthMeasureSpec, childHeightMeasureSpec); - params.mPreviousWidthSpec = childWidthMeasureSpec; } /** @@ -915,6 +900,8 @@ public class RelativeLayout extends ViewGroup { } else if (childParams.alignWithParent && rules[LEFT_OF] != 0) { if (myWidth >= 0) { childParams.mRight = myWidth - mPaddingRight - childParams.rightMargin; + } else { + // FIXME uh oh... } } @@ -939,6 +926,8 @@ public class RelativeLayout extends ViewGroup { } else if (childParams.alignWithParent && rules[ALIGN_RIGHT] != 0) { if (myWidth >= 0) { childParams.mRight = myWidth - mPaddingRight - childParams.rightMargin; + } else { + // FIXME uh oh... } } @@ -949,6 +938,8 @@ public class RelativeLayout extends ViewGroup { if (0 != rules[ALIGN_PARENT_RIGHT]) { if (myWidth >= 0) { childParams.mRight = myWidth - mPaddingRight - childParams.rightMargin; + } else { + // FIXME uh oh... } } } @@ -967,6 +958,8 @@ public class RelativeLayout extends ViewGroup { } else if (childParams.alignWithParent && rules[ABOVE] != 0) { if (myHeight >= 0) { childParams.mBottom = myHeight - mPaddingBottom - childParams.bottomMargin; + } else { + // FIXME uh oh... } } @@ -991,6 +984,8 @@ public class RelativeLayout extends ViewGroup { } else if (childParams.alignWithParent && rules[ALIGN_BOTTOM] != 0) { if (myHeight >= 0) { childParams.mBottom = myHeight - mPaddingBottom - childParams.bottomMargin; + } else { + // FIXME uh oh... } } @@ -1001,6 +996,8 @@ public class RelativeLayout extends ViewGroup { if (0 != rules[ALIGN_PARENT_BOTTOM]) { if (myHeight >= 0) { childParams.mBottom = myHeight - mPaddingBottom - childParams.bottomMargin; + } else { + // FIXME uh oh... } } @@ -1245,8 +1242,6 @@ public class RelativeLayout extends ViewGroup { @ViewDebug.ExportedProperty(category = "layout") public boolean alignWithParent; - int mPreviousWidthSpec; - public LayoutParams(Context c, AttributeSet attrs) { super(c, attrs); |
