Merge change 5684 into donut

* changes:
  Fixes #1940605. MeasureSpec's mode and height were inverted in RelativeLayout.
This commit is contained in:
Android (Google) Code Review
2009-06-29 14:29:23 -07:00

View File

@@ -558,9 +558,9 @@ public class RelativeLayout extends ViewGroup {
myWidth); myWidth);
int childHeightMeasureSpec; int childHeightMeasureSpec;
if (params.width == LayoutParams.FILL_PARENT) { if (params.width == LayoutParams.FILL_PARENT) {
childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(MeasureSpec.EXACTLY, myHeight); childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(myHeight, MeasureSpec.EXACTLY);
} else { } else {
childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED); childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(myHeight, MeasureSpec.AT_MOST);
} }
child.measure(childWidthMeasureSpec, childHeightMeasureSpec); child.measure(childWidthMeasureSpec, childHeightMeasureSpec);
} }
@@ -1403,7 +1403,9 @@ public class RelativeLayout extends ViewGroup {
/* /*
* START POOL IMPLEMENTATION * START POOL IMPLEMENTATION
*/ */
private static final int POOL_LIMIT = 12; // The pool is static, so all nodes instances are shared across
// activities, that's why we give it a rather high limit
private static final int POOL_LIMIT = 100;
private static final Pool<Node> sPool = Pools.synchronizedPool( private static final Pool<Node> sPool = Pools.synchronizedPool(
Pools.finitePool(new PoolableManager<Node>() { Pools.finitePool(new PoolableManager<Node>() {
public Node newInstance() { public Node newInstance() {