Reland "Skip intrinsic measurement when incoming constraints are fixed"
This relands commit f70c969e45b0418638ad161b09c8bf2930eec6b7 (reverted in aosp/4234388). Reason for original revert: The original change was reverted due to a platform test failure in ElementTest#interruption (b/548075103) during the platform Compose drop. The test had a tight size tolerance (0.62857145.dp) for intermediate transition widths, which failed when fixed incoming constraints (32.dp / 31.999992.dp) were directly applied by the short-circuit optimization. Why it is safe to reland: The platform test has been updated in frameworks/base via CL 41618226 (b/548288891), which added tolerance support to SizeAssertions.kt and updated ElementTest#interruption to use tolerance = 1.dp. With this fix merged on platform main, platform drops will no longer fail. Original change description: When incoming measurement constraints are fixed in a dimension, skip evaluating child min/max intrinsic dimensions in IntrinsicWidthNode and IntrinsicHeightNode. TAG=agy CONV=ae03f154-2dbc-46b0-ab24-033c01b30ff6 Bug: 355676048 Bug: 548075103 Test: ./gradlew :compose:foundation:foundation-layout:connectedCheck Flag: EXEMPT BUGFIX Change-Id: I7d803c9452338ab6d2e25ff8691d1019f27b286c
N
Nirmal Prasad committed
b48255d4919ed362b250577c28b84242d4f27794
Parent: 3a03cd7