[go: nahoru, domu]

Adds emptyContent() function to signify empty content for a composable

Refactors existing declarations of empty lambdas as necessary
Also adds orEmpty() extension to handle nullable lambdas in a nice way.

Bug: b/149308612
Test: ./gradlew bOS
Change-Id: I8f0cf38331ac11adb5a63e2253fca41ad84bc073
diff --git a/ui/ui-foundation/src/main/java/androidx/ui/foundation/ColoredRect.kt b/ui/ui-foundation/src/main/java/androidx/ui/foundation/ColoredRect.kt
index e2c7c8c..644aecf 100644
--- a/ui/ui-foundation/src/main/java/androidx/ui/foundation/ColoredRect.kt
+++ b/ui/ui-foundation/src/main/java/androidx/ui/foundation/ColoredRect.kt
@@ -17,6 +17,7 @@
 package androidx.ui.foundation
 
 import androidx.compose.Composable
+import androidx.compose.emptyContent
 import androidx.ui.core.Modifier
 import androidx.ui.graphics.Brush
 import androidx.ui.graphics.Color
@@ -46,8 +47,12 @@
     height: Dp? = null
 ) {
     Container(
-        modifier = modifier + DrawBackground(brush), width = width, height = height, expanded = true
-    ) {}
+        modifier = modifier + DrawBackground(brush),
+        width = width,
+        height = height,
+        expanded = true,
+        children = emptyContent()
+    )
 }
 
 /**
@@ -67,6 +72,10 @@
     height: Dp? = null
 ) {
     Container(
-        modifier = modifier + DrawBackground(color), width = width, height = height, expanded = true
-    ) {}
+        modifier = modifier + DrawBackground(color),
+        width = width,
+        height = height,
+        expanded = true,
+        children = emptyContent()
+    )
 }
diff --git a/ui/ui-framework/src/androidTest/java/androidx/ui/core/PopupTest.kt b/ui/ui-framework/src/androidTest/java/androidx/ui/core/PopupTest.kt
index c629c8f..3bac43f 100644
--- a/ui/ui-framework/src/androidTest/java/androidx/ui/core/PopupTest.kt
+++ b/ui/ui-framework/src/androidTest/java/androidx/ui/core/PopupTest.kt
@@ -17,6 +17,7 @@
 
 import android.view.View
 import androidx.compose.Composable
+import androidx.compose.emptyContent
 import androidx.test.espresso.Espresso
 import androidx.test.espresso.Root
 import androidx.test.espresso.assertion.ViewAssertions.matches
@@ -89,7 +90,11 @@
                                 OnPositioned {
                                     measureLatch.countDown()
                                 }
-                                SimpleContainer(width = popupWidthDp, height = popupHeightDp) {}
+                                SimpleContainer(
+                                    width = popupWidthDp,
+                                    height = popupHeightDp,
+                                    children = emptyContent()
+                                )
                             }
                         }
                     }
@@ -144,7 +149,11 @@
             SimpleContainer {
                 PopupTestTag(testTag) {
                     Popup(alignment = Alignment.Center) {
-                        SimpleContainer(width = popupWidthDp, height = popupHeightDp) {}
+                        SimpleContainer(
+                            width = popupWidthDp,
+                            height = popupHeightDp,
+                            children = emptyContent()
+                        )
                     }
                 }
             }
diff --git a/ui/ui-framework/src/androidTest/java/androidx/ui/core/gesture/LongPressDragGestureDetectorTest.kt b/ui/ui-framework/src/androidTest/java/androidx/ui/core/gesture/LongPressDragGestureDetectorTest.kt
index e1fa76b..9f4a995 100644
--- a/ui/ui-framework/src/androidTest/java/androidx/ui/core/gesture/LongPressDragGestureDetectorTest.kt
+++ b/ui/ui-framework/src/androidTest/java/androidx/ui/core/gesture/LongPressDragGestureDetectorTest.kt
@@ -18,6 +18,7 @@
 import android.view.MotionEvent
 import android.view.View
 import android.view.ViewGroup
+import androidx.compose.emptyContent
 import androidx.test.filters.LargeTest
 import androidx.test.rule.ActivityTestRule
 import androidx.ui.core.Layout
@@ -71,7 +72,7 @@
                             layout(100.ipx, 100.ipx) {
                                 setupLatch.countDown()
                             }
-                        }, children = {}
+                        }, children = emptyContent()
                     )
                 }
             }
diff --git a/ui/ui-framework/src/androidTest/java/androidx/ui/core/gesture/PressGestureDetectorTest.kt b/ui/ui-framework/src/androidTest/java/androidx/ui/core/gesture/PressGestureDetectorTest.kt
index b29c860..ba19107 100644
--- a/ui/ui-framework/src/androidTest/java/androidx/ui/core/gesture/PressGestureDetectorTest.kt
+++ b/ui/ui-framework/src/androidTest/java/androidx/ui/core/gesture/PressGestureDetectorTest.kt
@@ -20,6 +20,7 @@
 import android.view.View
 import android.view.ViewGroup
 import androidx.compose.Composable
+import androidx.compose.emptyContent
 import androidx.test.filters.LargeTest
 import androidx.test.rule.ActivityTestRule
 import androidx.ui.core.Layout
@@ -228,7 +229,7 @@
                 layout(100.ipx, 100.ipx) {
                     onLayout()
                 }
-            }, children = {}
+            }, children = emptyContent()
         )
     }
 }
\ No newline at end of file
diff --git a/ui/ui-framework/src/androidTest/java/androidx/ui/core/gesture/ScaleGestureDetectorTest.kt b/ui/ui-framework/src/androidTest/java/androidx/ui/core/gesture/ScaleGestureDetectorTest.kt
index d167072..a714d45 100644
--- a/ui/ui-framework/src/androidTest/java/androidx/ui/core/gesture/ScaleGestureDetectorTest.kt
+++ b/ui/ui-framework/src/androidTest/java/androidx/ui/core/gesture/ScaleGestureDetectorTest.kt
@@ -18,6 +18,7 @@
 import android.view.MotionEvent
 import android.view.View
 import android.view.ViewGroup
+import androidx.compose.emptyContent
 import androidx.test.filters.LargeTest
 import androidx.test.rule.ActivityTestRule
 import androidx.ui.core.DensityAmbient
@@ -65,7 +66,7 @@
                             layout(touchSlop * 4, touchSlop * 4) {
                                 setupLatch.countDown()
                             }
-                        }, children = {}
+                        }, children = emptyContent()
                     )
                 }
             }
diff --git a/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/AndroidLayoutDrawTest.kt b/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/AndroidLayoutDrawTest.kt
index 3f075eb..a9fffc3 100644
--- a/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/AndroidLayoutDrawTest.kt
+++ b/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/AndroidLayoutDrawTest.kt
@@ -30,6 +30,7 @@
 import androidx.compose.FrameManager
 import androidx.compose.Model
 import androidx.compose.Providers
+import androidx.compose.emptyContent
 import androidx.compose.state
 import androidx.test.filters.SdkSuppress
 import androidx.test.filters.SmallTest
@@ -406,17 +407,17 @@
                     Layout(measureBlock = { _, constraints ->
                         assertEquals(childConstraints[0], constraints)
                         layout(0.ipx, 0.ipx) {}
-                    }, children = {}, modifier = LayoutTag("header"))
+                    }, children = emptyContent(), modifier = LayoutTag("header"))
                 }
                 val footer = @Composable {
                     Layout(measureBlock = { _, constraints ->
                         assertEquals(childConstraints[1], constraints)
                         layout(0.ipx, 0.ipx) {}
-                    }, children = {}, modifier = LayoutTag("footer"))
+                    }, children = emptyContent(), modifier = LayoutTag("footer"))
                     Layout(measureBlock = { _, constraints ->
                         assertEquals(childConstraints[2], constraints)
                         layout(0.ipx, 0.ipx) {}
-                    }, children = {}, modifier = LayoutTag("footer"))
+                    }, children = emptyContent(), modifier = LayoutTag("footer"))
                 }
 
                 Layout({ header(); footer() }) { measurables, _ ->
@@ -443,12 +444,12 @@
             activity.setContentInFrameLayout {
                 val header = @Composable {
                     ParentData(data = 0) {
-                        Layout(children = {}) { _, _ -> layout(0.ipx, 0.ipx) {} }
+                        Layout(children = emptyContent()) { _, _ -> layout(0.ipx, 0.ipx) {} }
                     }
                 }
                 val footer = @Composable {
                     ParentData(data = 1) {
-                        Layout(children = {}) { _, _ -> layout(0.ipx, 0.ipx) {} }
+                        Layout(children = emptyContent()) { _, _ -> layout(0.ipx, 0.ipx) {} }
                     }
                 }
 
@@ -1542,7 +1543,7 @@
         activityTestRule.runOnUiThreadIR {
             activity.setContentInFrameLayout {
                 Layout(children = {
-                    Layout(children = {}) { _, _ ->
+                    Layout(children = emptyContent()) { _, _ ->
                         latch.countDown()
                         layout(model.size, model.size) {}
                     }
@@ -1571,7 +1572,7 @@
             activity.setContentInFrameLayout {
                 Layout(children = {
                     RepaintBoundary {
-                        Layout(children = {}) { _, _ ->
+                        Layout(children = emptyContent()) { _, _ ->
                             latch.countDown()
                             layout(model.size, model.size) {}
                         }
@@ -1852,7 +1853,7 @@
                     canvas.drawRect(Rect(10f, 10f, 20f, 20f), paint)
                     drawLatch.countDown()
                 }
-                FixedSize(30.ipx, colorModifier) {}
+                FixedSize(30.ipx, colorModifier)
             }
         }
         validateSquareColors(outerColor = outerColor, innerColor = innerColor, size = 10)
@@ -1873,9 +1874,7 @@
                 )
                 ) {
                     Padding(10.ipx) {
-                        FixedSize(10.ipx,
-                            background(color = innerColor)
-                        ) {}
+                        FixedSize(10.ipx, background(color = innerColor))
                     }
                 }
             }
@@ -2050,7 +2049,7 @@
                         }
                         layout(100.ipx, 100.ipx) {}
                     }
-                    FixedSize(30.ipx) { }
+                    FixedSize(30.ipx, children = emptyContent())
                 }) { measurables, constraints ->
                     val (first, second) = measurables
                     val firstPlaceable = first.measure(constraints)
@@ -2300,7 +2299,7 @@
 fun FixedSize(
     size: IntPx,
     modifier: Modifier = Modifier.None,
-    children: @Composable() () -> Unit = {}
+    children: @Composable() () -> Unit = emptyContent()
 ) {
     Layout(children = children, modifier = modifier) { measurables, _ ->
         val newConstraints = Constraints.fixed(size, size)
diff --git a/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/LayoutTagTest.kt b/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/LayoutTagTest.kt
index 0642133..45deabe 100644
--- a/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/LayoutTagTest.kt
+++ b/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/LayoutTagTest.kt
@@ -16,6 +16,7 @@
 
 package androidx.ui.core.test
 
+import androidx.compose.emptyContent
 import androidx.test.filters.SmallTest
 import androidx.test.rule.ActivityTestRule
 import androidx.ui.core.Layout
@@ -55,13 +56,18 @@
             activity.setContent {
                 Layout(
                     {
-                        AtLeastSize(0.ipx, LayoutTag("first"), children = {})
-                        ParentData(LayoutTag("second")) { AtLeastSize(0.ipx, children = {}) }
+                        AtLeastSize(0.ipx, LayoutTag("first"), children = emptyContent())
+                        ParentData(LayoutTag("second")) {
+                            AtLeastSize(
+                                0.ipx,
+                                children = emptyContent()
+                            )
+                        }
                         ParentData(
                             object : LayoutTagParentData {
                                 override val tag = "third"
                             },
-                            children = { AtLeastSize(0.ipx, children = {}) }
+                            children = { AtLeastSize(0.ipx, children = emptyContent()) }
                         )
                     }
                 ) { measurables, _ ->
diff --git a/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/WithConstraintsTest.kt b/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/WithConstraintsTest.kt
index 5ba41c7..5ca740e 100644
--- a/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/WithConstraintsTest.kt
+++ b/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/WithConstraintsTest.kt
@@ -19,7 +19,7 @@
 import android.graphics.Bitmap
 import android.os.Build
 import androidx.compose.Composable
-import androidx.compose.Observe
+import androidx.compose.emptyContent
 import androidx.compose.remember
 import androidx.compose.state
 import androidx.test.filters.SdkSuppress
@@ -280,7 +280,7 @@
                         actualConstraints = constraints
                         assertEquals(1, latch.count)
                         latch.countDown()
-                        Container(width = 100.ipx, height = 100.ipx) {}
+                        Container(width = 100.ipx, height = 100.ipx, children = emptyContent())
                     }
                 }
             }
@@ -461,7 +461,7 @@
                                 }
                             }
                         }
-                        Container(100.ipx, 100.ipx) {}
+                        Container(100.ipx, 100.ipx, emptyContent())
                     }
                 }
             }
@@ -529,7 +529,7 @@
                     WithConstraints {
                         assertEquals(1, innerComposeLatch.count)
                         innerComposeLatch.countDown()
-                        Layout(children = {}) { _, _ ->
+                        Layout(children = emptyContent()) { _, _ ->
                             assertEquals(1, innerMeasureLatch.count)
                             innerMeasureLatch.countDown()
                             layout(100.ipx, 100.ipx) {
diff --git a/ui/ui-framework/src/main/java/androidx/ui/core/Layout.kt b/ui/ui-framework/src/main/java/androidx/ui/core/Layout.kt
index bf03730..76453f3 100644
--- a/ui/ui-framework/src/main/java/androidx/ui/core/Layout.kt
+++ b/ui/ui-framework/src/main/java/androidx/ui/core/Layout.kt
@@ -22,6 +22,7 @@
 import androidx.compose.Context
 import androidx.compose.FrameManager
 import androidx.compose.compositionReference
+import androidx.compose.emptyContent
 import androidx.compose.remember
 import androidx.ui.unit.Density
 import androidx.ui.unit.IntPx
@@ -361,8 +362,6 @@
  */
 private val ChildGroupKey = DataNodeKey<@Composable() () -> Unit>("Compose: ChildGroup")
 
-private val EmptyComposable: @Composable() () -> Unit = @Composable {}
-
 /**
  * A [List] of [Measurable]s passed in as the argument to the [Layout] `measureBlock` when
  * using the `vararg` variant.
@@ -405,7 +404,7 @@
     measureBlock: MultiMeasureBlock
 ) {
     val children: @Composable() () -> Unit = if (childrenArray.isEmpty()) {
-        EmptyComposable
+        emptyContent()
     } else {
         @Composable {
             childrenArray.forEach { childrenComposable ->
diff --git a/ui/ui-layout/src/androidTest/java/androidx/ui/layout/test/FlexTest.kt b/ui/ui-layout/src/androidTest/java/androidx/ui/layout/test/FlexTest.kt
index 95afe4e..bcab7d4 100644
--- a/ui/ui-layout/src/androidTest/java/androidx/ui/layout/test/FlexTest.kt
+++ b/ui/ui-layout/src/androidTest/java/androidx/ui/layout/test/FlexTest.kt
@@ -17,6 +17,7 @@
 package androidx.ui.layout.test
 
 import androidx.compose.Composable
+import androidx.compose.emptyContent
 import androidx.test.filters.SmallTest
 import androidx.ui.core.Alignment
 import androidx.ui.core.Constraints
@@ -963,8 +964,17 @@
         show {
             Center {
                 Row {
-                    Container(LayoutFlexible(1f), width = sizeDp, height = sizeDp) {}
-                    Container(width = (sizeDp * 2), height = (sizeDp * 2)) {}
+                    Container(
+                        LayoutFlexible(1f),
+                        width = sizeDp,
+                        height = sizeDp,
+                        children = emptyContent()
+                    )
+                    Container(
+                        width = (sizeDp * 2),
+                        height = (sizeDp * 2),
+                        children = emptyContent()
+                    )
 
                     OnPositioned( coordinates ->
                         rowSize = coordinates.size
@@ -1088,8 +1098,17 @@
             Center {
                 ConstrainedBox(constraints = DpConstraints(maxWidth = rowWidthDp)) {
                     Row {
-                        Container(LayoutFlexible(1f), width = sizeDp, height = sizeDp) {}
-                        Container(width = sizeDp * 2, height = sizeDp * 2) {}
+                        Container(
+                            LayoutFlexible(1f),
+                            width = sizeDp,
+                            height = sizeDp,
+                            children = emptyContent()
+                        )
+                        Container(
+                            width = sizeDp * 2,
+                            height = sizeDp * 2,
+                            children = emptyContent()
+                        )
 
                         OnPositioned( coordinates ->
                             rowSize = coordinates.size
@@ -1209,8 +1228,11 @@
         )
     }
 
-    @Test @Ignore("Wrap is not supported when there are flexible children. " +
-            "Should use maxWidth(.Infinity) modifier when it is available")
+    @Test
+    @Ignore(
+        "Wrap is not supported when there are flexible children. " +
+                "Should use maxWidth(.Infinity) modifier when it is available"
+    )
     fun testRow_withMinMainAxisSize() = with(density) {
         val sizeDp = 50.dp
         val size = sizeDp.toIntPx()
@@ -1407,8 +1429,17 @@
         show {
             Center {
                 Column {
-                    Container(LayoutFlexible(1f), width = sizeDp, height = sizeDp) {}
-                    Container(width = (sizeDp * 2), height = (sizeDp * 2)) {}
+                    Container(
+                        LayoutFlexible(1f),
+                        width = sizeDp,
+                        height = sizeDp,
+                        children = emptyContent()
+                    )
+                    Container(
+                        width = (sizeDp * 2),
+                        height = (sizeDp * 2),
+                        children = emptyContent()
+                    )
 
                     OnPositioned( coordinates ->
                         columnSize = coordinates.size
@@ -1532,8 +1563,17 @@
             Center {
                 ConstrainedBox(constraints = DpConstraints(maxHeight = columnHeightDp)) {
                     Column {
-                        Container(LayoutFlexible(1f), width = sizeDp, height = sizeDp) {}
-                        Container(width = sizeDp * 2, height = sizeDp * 2) {}
+                        Container(
+                            LayoutFlexible(1f),
+                            width = sizeDp,
+                            height = sizeDp,
+                            children = emptyContent()
+                        )
+                        Container(
+                            width = sizeDp * 2,
+                            height = sizeDp * 2,
+                            children = emptyContent()
+                        )
 
                         OnPositioned( coordinates ->
                             columnSize = coordinates.size
@@ -1653,8 +1693,11 @@
         )
     }
 
-    @Test @Ignore("Wrap is not supported when there are flexible children. " +
-            "Should use maxHeight(IntPx.Infinity) modifier when it is available")
+    @Test
+    @Ignore(
+        "Wrap is not supported when there are flexible children. " +
+                "Should use maxHeight(IntPx.Infinity) modifier when it is available"
+    )
     fun testColumn_withMinMainAxisSize() = with(density) {
         val sizeDp = 50.dp
         val size = sizeDp.toIntPx()
@@ -1701,38 +1744,38 @@
     @Test
     fun testColumn_measuresChildrenCorrectly_whenMeasuredWithInfiniteHeight() =
         with(density) {
-        val columnMinHeight = 100.dp
-        val inflexibleChildHeight = 30.dp
-        val latch = CountDownLatch(1)
-        show {
-            WithInfiniteConstraints {
-                ConstrainedBox(DpConstraints(minHeight = columnMinHeight)) {
-                    Column {
-                        WithConstraints { constraints ->
-                            assertEquals(Constraints(), constraints)
-                            FixedSizeLayout(0.ipx, inflexibleChildHeight.toIntPx(), mapOf())
-                        }
-                        WithConstraints { constraints ->
-                            assertEquals(Constraints(), constraints)
-                            FixedSizeLayout(0.ipx, inflexibleChildHeight.toIntPx(), mapOf())
-                        }
-                        Layout({}, LayoutFlexible(1f)) { _, constraints ->
-                            assertEquals(
-                                columnMinHeight.toIntPx() - inflexibleChildHeight.toIntPx() * 2,
-                                constraints.minHeight
-                            )
-                            assertEquals(
-                                columnMinHeight.toIntPx() - inflexibleChildHeight.toIntPx() * 2,
-                                constraints.maxHeight
-                            )
-                            latch.countDown()
-                            layout(0.ipx, 0.ipx) { }
+            val columnMinHeight = 100.dp
+            val inflexibleChildHeight = 30.dp
+            val latch = CountDownLatch(1)
+            show {
+                WithInfiniteConstraints {
+                    ConstrainedBox(DpConstraints(minHeight = columnMinHeight)) {
+                        Column {
+                            WithConstraints { constraints ->
+                                assertEquals(Constraints(), constraints)
+                                FixedSizeLayout(0.ipx, inflexibleChildHeight.toIntPx(), mapOf())
+                            }
+                            WithConstraints { constraints ->
+                                assertEquals(Constraints(), constraints)
+                                FixedSizeLayout(0.ipx, inflexibleChildHeight.toIntPx(), mapOf())
+                            }
+                            Layout(emptyContent(), LayoutFlexible(1f)) { _, constraints ->
+                                assertEquals(
+                                    columnMinHeight.toIntPx() - inflexibleChildHeight.toIntPx() * 2,
+                                    constraints.minHeight
+                                )
+                                assertEquals(
+                                    columnMinHeight.toIntPx() - inflexibleChildHeight.toIntPx() * 2,
+                                    constraints.maxHeight
+                                )
+                                latch.countDown()
+                                layout(0.ipx, 0.ipx) { }
+                            }
                         }
                     }
                 }
             }
         }
-    }
 
     @Test
     fun testColumn_measuresInflexibleChildrenCorrectly() = with(density) {
@@ -2444,63 +2487,76 @@
     fun testRow_withInflexibleChildren_hasCorrectIntrinsicMeasurements() = with(density) {
         testIntrinsics(@Composable {
             Row {
-                Container(LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp)) { }
+                Container(LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), children = emptyContent())
             }
         }, @Composable {
             Row(LayoutWidth.Fill) {
-                Container(LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp)) { }
+                Container(LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), children = emptyContent())
             }
         }, @Composable {
             Row {
-                Container(LayoutAspectRatio(2f) + LayoutGravity.Top) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp),
-                    LayoutGravity.Center) { }
+                Container(LayoutAspectRatio(2f) + LayoutGravity.Top, children = emptyContent())
+                ConstrainedBox(
+                    DpConstraints.fixed(50.dp, 40.dp),
+                    LayoutGravity.Center,
+                    children = emptyContent()
+                )
             }
         }, @Composable {
             Row {
                 Container(
-                    LayoutAspectRatio(2f) + LayoutGravity.RelativeToSiblings(FirstBaseline)
-                ) { }
+                    LayoutAspectRatio(2f) + LayoutGravity.RelativeToSiblings(FirstBaseline),
+                    children = emptyContent()
+                )
                 ConstrainedBox(
                     DpConstraints.fixed(50.dp, 40.dp),
-                    LayoutGravity.RelativeToSiblings { it.width }
-                ) { }
+                    LayoutGravity.RelativeToSiblings { it.width },
+                    children = emptyContent()
+                )
             }
         }, @Composable {
             Row(LayoutWidth.Fill, arrangement = Arrangement.Begin) {
-                Container(LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp)) { }
+                Container(LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), children = emptyContent())
             }
         }, @Composable {
             Row(LayoutWidth.Fill, arrangement = Arrangement.Center) {
-                Container(LayoutGravity.Center + LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp),
-                    LayoutGravity.Center) { }
+                Container(LayoutGravity.Center + LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(
+                    DpConstraints.fixed(50.dp, 40.dp),
+                    LayoutGravity.Center,
+                    children = emptyContent()
+                )
             }
         }, @Composable {
             Row(LayoutWidth.Fill, arrangement = Arrangement.End) {
-                Container(LayoutGravity.Bottom + LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp),
-                    LayoutGravity.Bottom) { }
+                Container(LayoutGravity.Bottom + LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(
+                    DpConstraints.fixed(50.dp, 40.dp),
+                    LayoutGravity.Bottom,
+                    children = emptyContent()
+                )
             }
         }, @Composable {
             Row(LayoutWidth.Fill, arrangement = Arrangement.SpaceAround) {
-                Container(LayoutHeight.Fill + LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp),
-                    LayoutHeight.Fill
-                ) { }
+                Container(LayoutHeight.Fill + LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(
+                    DpConstraints.fixed(50.dp, 40.dp),
+                    LayoutHeight.Fill,
+                    children = emptyContent()
+                )
             }
         }, @Composable {
             Row(LayoutWidth.Fill, arrangement = Arrangement.SpaceBetween) {
-                Container(LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp)) { }
+                Container(LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), children = emptyContent())
             }
         }, @Composable {
             Row(LayoutWidth.Fill, arrangement = Arrangement.SpaceEvenly) {
-                Container(LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp)) { }
+                Container(LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), children = emptyContent())
             }
         }) { minIntrinsicWidth, minIntrinsicHeight, maxIntrinsicWidth, maxIntrinsicHeight ->
             // Min width.
@@ -2526,99 +2582,150 @@
     fun testRow_withFlexibleChildren_hasCorrectIntrinsicMeasurements() = with(density) {
         testIntrinsics(@Composable {
             Row {
-                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp), LayoutFlexible(3f)) { }
-                ConstrainedBox(DpConstraints.fixed(30.dp, 40.dp), LayoutFlexible(2f)) { }
-                Container(LayoutAspectRatio(2f) + LayoutFlexible(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp)) { }
+                ConstrainedBox(
+                    DpConstraints.fixed(20.dp, 30.dp),
+                    LayoutFlexible(3f),
+                    children = emptyContent()
+                )
+                ConstrainedBox(
+                    DpConstraints.fixed(30.dp, 40.dp),
+                    LayoutFlexible(2f),
+                    children = emptyContent()
+                )
+                Container(LayoutAspectRatio(2f) + LayoutFlexible(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp), children = emptyContent())
             }
         }, @Composable {
             Row {
                 ConstrainedBox(
                     DpConstraints.fixed(20.dp, 30.dp),
-                    LayoutFlexible(3f) + LayoutGravity.Top
-                ) { }
+                    LayoutFlexible(3f) + LayoutGravity.Top,
+                    children = emptyContent()
+                )
                 ConstrainedBox(
                     DpConstraints.fixed(30.dp, 40.dp),
-                    LayoutFlexible(2f) + LayoutGravity.Center
-                ) { }
-                Container(LayoutAspectRatio(2f) + LayoutFlexible(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp),
-                    LayoutGravity.Bottom) { }
+                    LayoutFlexible(2f) + LayoutGravity.Center,
+                    children = emptyContent()
+                )
+                Container(LayoutAspectRatio(2f) + LayoutFlexible(2f), children = emptyContent())
+                ConstrainedBox(
+                    DpConstraints.fixed(20.dp, 30.dp),
+                    LayoutGravity.Bottom,
+                    children = emptyContent()
+                )
             }
         }, @Composable {
             Row(arrangement = Arrangement.Begin) {
-                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp), LayoutFlexible(3f)) { }
-                ConstrainedBox(DpConstraints.fixed(30.dp, 40.dp), LayoutFlexible(2f)) { }
-                Container(LayoutAspectRatio(2f) + LayoutFlexible(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp)) { }
+                ConstrainedBox(
+                    DpConstraints.fixed(20.dp, 30.dp),
+                    LayoutFlexible(3f),
+                    children = emptyContent()
+                )
+                ConstrainedBox(
+                    DpConstraints.fixed(30.dp, 40.dp),
+                    LayoutFlexible(2f),
+                    children = emptyContent()
+                )
+                Container(LayoutAspectRatio(2f) + LayoutFlexible(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp), children = emptyContent())
             }
         }, @Composable {
             Row(arrangement = Arrangement.Center) {
                 ConstrainedBox(
                     constraints = DpConstraints.fixed(20.dp, 30.dp),
-                    modifier = LayoutFlexible(3f) + LayoutGravity.Center
-                ) { }
+                    modifier = LayoutFlexible(3f) + LayoutGravity.Center,
+                    children = emptyContent()
+                )
                 ConstrainedBox(
                     constraints = DpConstraints.fixed(30.dp, 40.dp),
-                    modifier = LayoutFlexible(2f) + LayoutGravity.Center
-                ) { }
+                    modifier = LayoutFlexible(2f) + LayoutGravity.Center,
+                    children = emptyContent()
+                )
                 Container(
-                    LayoutAspectRatio(2f) + LayoutFlexible(2f) + LayoutGravity.Center
-                ) { }
+                    LayoutAspectRatio(2f) + LayoutFlexible(2f) + LayoutGravity.Center,
+                    children =
+                    emptyContent()
+                )
                 ConstrainedBox(
                     constraints = DpConstraints.fixed(20.dp, 30.dp),
-                    modifier = LayoutGravity.Center
-                ) { }
+                    modifier = LayoutGravity.Center,
+                    children = emptyContent()
+                )
             }
         }, @Composable {
             Row(arrangement = Arrangement.End) {
                 ConstrainedBox(
                     constraints = DpConstraints.fixed(20.dp, 30.dp),
-                    modifier = LayoutFlexible(3f) + LayoutGravity.Bottom
-                ) { }
+                    modifier = LayoutFlexible(3f) + LayoutGravity.Bottom,
+                    children = emptyContent()
+                )
                 ConstrainedBox(
                     constraints = DpConstraints.fixed(30.dp, 40.dp),
-                    modifier = LayoutFlexible(2f) + LayoutGravity.Bottom
-                ) { }
+                    modifier = LayoutFlexible(2f) + LayoutGravity.Bottom,
+                    children = emptyContent()
+                )
                 Container(
-                    LayoutAspectRatio(2f) + LayoutFlexible(2f) + LayoutGravity.Bottom
-                ) { }
+                    LayoutAspectRatio(2f) + LayoutFlexible(2f) + LayoutGravity.Bottom,
+                    children = emptyContent()
+                )
                 ConstrainedBox(
                     constraints = DpConstraints.fixed(20.dp, 30.dp),
-                    modifier = LayoutGravity.Bottom
-                ) { }
+                    modifier = LayoutGravity.Bottom,
+                    children = emptyContent()
+                )
             }
         }, @Composable {
             Row(arrangement = Arrangement.SpaceAround) {
                 ConstrainedBox(
                     constraints = DpConstraints.fixed(20.dp, 30.dp),
-                    modifier = LayoutFlexible(3f) + LayoutHeight.Fill
-                ) { }
+                    modifier = LayoutFlexible(3f) + LayoutHeight.Fill,
+                    children = emptyContent()
+                )
                 ConstrainedBox(
                     constraints = DpConstraints.fixed(30.dp, 40.dp),
-                    modifier = LayoutFlexible(2f) + LayoutHeight.Fill
-                ) { }
+                    modifier = LayoutFlexible(2f) + LayoutHeight.Fill,
+                    children = emptyContent()
+                )
                 Container(
-                    LayoutAspectRatio(2f) + LayoutFlexible(2f) + LayoutHeight.Fill
-                ) { }
+                    LayoutAspectRatio(2f) + LayoutFlexible(2f) + LayoutHeight.Fill,
+                    children =
+                    emptyContent()
+                )
                 ConstrainedBox(
                     constraints = DpConstraints.fixed(20.dp, 30.dp),
-                    modifier = LayoutHeight.Fill
-                ) { }
+                    modifier = LayoutHeight.Fill,
+                    children = emptyContent()
+                )
             }
         }, @Composable {
             Row(arrangement = Arrangement.SpaceBetween) {
-                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp), LayoutFlexible(3f)) { }
-                ConstrainedBox(DpConstraints.fixed(30.dp, 40.dp), LayoutFlexible(2f)) { }
-                Container(LayoutAspectRatio(2f) + LayoutFlexible(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp)) { }
+                ConstrainedBox(
+                    DpConstraints.fixed(20.dp, 30.dp),
+                    LayoutFlexible(3f),
+                    children = emptyContent()
+                )
+                ConstrainedBox(
+                    DpConstraints.fixed(30.dp, 40.dp),
+                    LayoutFlexible(2f),
+                    children = emptyContent()
+                )
+                Container(LayoutAspectRatio(2f) + LayoutFlexible(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp), children = emptyContent())
             }
         }, @Composable {
             Row(arrangement = Arrangement.SpaceEvenly) {
-                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp), LayoutFlexible(3f)) { }
-                ConstrainedBox(DpConstraints.fixed(30.dp, 40.dp), LayoutFlexible(2f)) { }
-                Container(LayoutAspectRatio(2f) + LayoutFlexible(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp)) { }
+                ConstrainedBox(
+                    DpConstraints.fixed(20.dp, 30.dp),
+                    LayoutFlexible(3f),
+                    children = emptyContent()
+                )
+                ConstrainedBox(
+                    DpConstraints.fixed(30.dp, 40.dp),
+                    LayoutFlexible(2f),
+                    children = emptyContent()
+                )
+                Container(LayoutAspectRatio(2f) + LayoutFlexible(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(20.dp, 30.dp), children = emptyContent())
             }
         }) { minIntrinsicWidth, minIntrinsicHeight, maxIntrinsicWidth, maxIntrinsicHeight ->
             // Min width.
@@ -2672,58 +2779,72 @@
     fun testColumn_withInflexibleChildren_hasCorrectIntrinsicMeasurements() = with(density) {
         testIntrinsics(@Composable {
             Column {
-                Container(LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp)) { }
+                Container(LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), children = emptyContent())
             }
         }, @Composable {
             Column {
-                Container(LayoutAspectRatio(2f) + LayoutGravity.Start) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), LayoutGravity.End) { }
-            }
-        }, @Composable {
-            Column {
-                Container(LayoutAspectRatio(2f) + LayoutGravity.RelativeToSiblings { 0.ipx }) { }
+                Container(LayoutAspectRatio(2f) + LayoutGravity.Start, children = emptyContent())
                 ConstrainedBox(
                     DpConstraints.fixed(50.dp, 40.dp),
-                    LayoutGravity.RelativeToSiblings(TestVerticalLine)
-                ) { }
+                    LayoutGravity.End,
+                    children = emptyContent()
+                )
+            }
+        }, @Composable {
+            Column {
+                Container(
+                    LayoutAspectRatio(2f) + LayoutGravity.RelativeToSiblings { 0.ipx },
+                    children = emptyContent()
+                )
+                ConstrainedBox(
+                    DpConstraints.fixed(50.dp, 40.dp),
+                    LayoutGravity.RelativeToSiblings(TestVerticalLine),
+                    children = emptyContent()
+                )
             }
         }, @Composable {
             Column(LayoutHeight.Fill) {
-                Container(LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp)) { }
+                Container(LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), children = emptyContent())
             }
         }, @Composable {
             Column(LayoutHeight.Fill, arrangement = Arrangement.Begin) {
-                Container(LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp)) { }
+                Container(LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), children = emptyContent())
             }
         }, @Composable {
             Column(LayoutHeight.Fill, arrangement = Arrangement.Center) {
-                Container(LayoutGravity.Center + LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp)) { }
+                Container(LayoutGravity.Center + LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), children = emptyContent())
             }
         }, @Composable {
             Column(LayoutHeight.Fill, arrangement = Arrangement.End) {
-                Container(LayoutGravity.End + LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), LayoutGravity.End) { }
+                Container(LayoutGravity.End + LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(
+                    DpConstraints.fixed(50.dp, 40.dp),
+                    LayoutGravity.End,
+                    children = emptyContent()
+                )
             }
         }, @Composable {
             Column(LayoutHeight.Fill, arrangement = Arrangement.SpaceAround) {
-                Container(LayoutWidth.Fill + LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp),
-                    LayoutWidth.Fill
-                ) { }
+                Container(LayoutWidth.Fill + LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(
+                    DpConstraints.fixed(50.dp, 40.dp),
+                    LayoutWidth.Fill,
+                    children = emptyContent()
+                )
             }
         }, @Composable {
             Column(LayoutHeight.Fill, arrangement = Arrangement.SpaceBetween) {
-                Container(LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp)) { }
+                Container(LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), children = emptyContent())
             }
         }, @Composable {
             Column(LayoutHeight.Fill, arrangement = Arrangement.SpaceEvenly) {
-                Container(LayoutAspectRatio(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp)) { }
+                Container(LayoutAspectRatio(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(50.dp, 40.dp), children = emptyContent())
             }
         }) { minIntrinsicWidth, minIntrinsicHeight, maxIntrinsicWidth, maxIntrinsicHeight ->
             // Min width.
@@ -2749,21 +2870,31 @@
     fun testColumn_withFlexibleChildren_hasCorrectIntrinsicMeasurements() = with(density) {
         testIntrinsics(@Composable {
             Column {
-                ConstrainedBox(DpConstraints.fixed(30.dp, 20.dp), LayoutFlexible(3f)) { }
-                ConstrainedBox(DpConstraints.fixed(40.dp, 30.dp), LayoutFlexible(2f)) { }
-                Container(LayoutAspectRatio(0.5f) + LayoutFlexible(2f)) { }
-                ConstrainedBox(DpConstraints.fixed(30.dp, 20.dp)) { }
+                ConstrainedBox(
+                    DpConstraints.fixed(30.dp, 20.dp),
+                    LayoutFlexible(3f),
+                    children = emptyContent()
+                )
+                ConstrainedBox(
+                    DpConstraints.fixed(40.dp, 30.dp),
+                    LayoutFlexible(2f),
+                    children = emptyContent()
+                )
+                Container(LayoutAspectRatio(0.5f) + LayoutFlexible(2f), children = emptyContent())
+                ConstrainedBox(DpConstraints.fixed(30.dp, 20.dp), children = emptyContent())
             }
         }, @Composable {
             Column {
                 ConstrainedBox(
                     DpConstraints.fixed(30.dp, 20.dp),
-                    LayoutFlexible(3f) + LayoutGravity.Start
-                ) { }
+                    LayoutFlexible(3f) + LayoutGravity.Start,
+                    children = emptyContent()
+                )
                 ConstrainedBox(
                     DpConstraints.fixed(40.dp, 30.dp),
-                    LayoutFlexible(2f) + LayoutGravity.Center
-                ) { }
+                    LayoutFlexible(2f) + LayoutGravity.Center,
+                    children = emptyContent()
+                )
                 Container(LayoutAspectRatio(0.5f) + LayoutFlexible(2f)) { }
                 ConstrainedBox(DpConstraints.fixed(30.dp, 20.dp), LayoutGravity.End) { }
             }
@@ -2906,10 +3037,11 @@
                         positionedLatch.countDown()
                     }) {
                         Container(
-                            LayoutFlexible(2f) + LayoutFlexible(1f)
-                        ) {}
+                            LayoutFlexible(2f) + LayoutFlexible(1f),
+                            children = emptyContent()
+                        )
                     }
-                    Container(LayoutFlexible(1f)) {}
+                    Container(LayoutFlexible(1f), children = emptyContent())
                 }
             }
         }
@@ -2932,8 +3064,9 @@
                 Container(
                     modifier = LayoutGravity.RelativeToSiblings { it.height },
                     width = size,
-                    height = size
-                ) {}
+                    height = size,
+                    children = emptyContent()
+                )
                 OnChildPositioned( coordinates ->
                     containerSize.value = coordinates.size
                     containerPosition.value = coordinates.globalPosition
@@ -2943,8 +3076,9 @@
                         modifier = LayoutGravity.RelativeToSiblings { 0.ipx } +
                                 LayoutGravity.RelativeToSiblings { it.height * 0.5 },
                         width = size,
-                        height = size
-                    ) {}
+                        height = size,
+                        children = emptyContent()
+                    )
                 }
             }
         }
@@ -2971,7 +3105,8 @@
     Layout(children = children, modifier = modifier, measureBlock = { _, constraints ->
         val widthPx = max(width.toIntPx(), constraints.minWidth)
         val heightPx = max(height.toIntPx(), constraints.minHeight)
-        layout(widthPx, heightPx,
+        layout(
+            widthPx, heightPx,
             mapOf(TestHorizontalLine to baseline.toIntPx(), TestVerticalLine to baseline.toIntPx())
         ) {}
     })
diff --git a/ui/ui-layout/src/androidTest/java/androidx/ui/layout/test/OnPositionedTest.kt b/ui/ui-layout/src/androidTest/java/androidx/ui/layout/test/OnPositionedTest.kt
index dfa987c..1849f54 100644
--- a/ui/ui-layout/src/androidTest/java/androidx/ui/layout/test/OnPositionedTest.kt
+++ b/ui/ui-layout/src/androidTest/java/androidx/ui/layout/test/OnPositionedTest.kt
@@ -19,6 +19,7 @@
 import android.widget.FrameLayout
 import androidx.compose.Composable
 import androidx.compose.Model
+import androidx.compose.emptyContent
 import androidx.test.filters.SmallTest
 import androidx.ui.core.Alignment
 import androidx.ui.core.Layout
@@ -94,9 +95,12 @@
                     realTop = it.positionInParent.y
                     positionedLatch.countDown()
                 }) {
-                    Container(LayoutSize.Fill +
-                            LayoutPadding(left = paddingLeftPx.toDp(), top = paddingTopPx.toDp())
-                    ) {}
+                    Container(
+                        LayoutSize.Fill + LayoutPadding(
+                            left = paddingLeftPx.toDp(),
+                            top = paddingTopPx.toDp()
+                        ), children = emptyContent()
+                    )
                 }
             }
         }
@@ -157,13 +161,13 @@
                     firstCoordinates = it
                     positionedLatch.countDown()
                 }) {
-                    Container(width = sizeDp, height = sizeDp) {}
+                    Container(width = sizeDp, height = sizeDp, children = emptyContent())
                 }
                 OnChildPositioned(>
                     secondCoordinates = it
                     positionedLatch.countDown()
                 }) {
-                    Container(width = sizeDp, height = sizeDp) {}
+                    Container(width = sizeDp, height = sizeDp, children = emptyContent())
                 }
             }
         }
@@ -194,7 +198,7 @@
                         realLocalPosition = it.globalToLocal(globalPosition)
                         positionedLatch.countDown()
                     }) {
-                        Container(expanded = true) {}
+                        Container(expanded = true, children = emptyContent())
                     }
                 }
             }
@@ -237,7 +241,10 @@
                     realLeft = it.positionInParent.x
                     positionedLatch.countDown()
                 }) {
-                    Container(LayoutSize.Fill + LayoutPadding(left = modelLeft.size)) {}
+                    Container(
+                        LayoutSize.Fill + LayoutPadding(left = modelLeft.size),
+                        children = emptyContent()
+                    )
                 }
             }
         }
diff --git a/ui/ui-layout/src/main/java/androidx/ui/layout/Spacer.kt b/ui/ui-layout/src/main/java/androidx/ui/layout/Spacer.kt
index 565687c..76ef28e 100644
--- a/ui/ui-layout/src/main/java/androidx/ui/layout/Spacer.kt
+++ b/ui/ui-layout/src/main/java/androidx/ui/layout/Spacer.kt
@@ -17,6 +17,7 @@
 package androidx.ui.layout
 
 import androidx.compose.Composable
+import androidx.compose.emptyContent
 import androidx.ui.core.Modifier
 
 /**
@@ -29,5 +30,5 @@
  */
 @Composable
 fun Spacer(modifier: Modifier) {
-    Container(modifier = modifier) {}
+    Container(modifier = modifier, children = emptyContent())
 }
\ No newline at end of file
diff --git a/ui/ui-material/src/androidTest/java/androidx/ui/material/DrawerTest.kt b/ui/ui-material/src/androidTest/java/androidx/ui/material/DrawerTest.kt
index 56b6eb9..19d667d 100644
--- a/ui/ui-material/src/androidTest/java/androidx/ui/material/DrawerTest.kt
+++ b/ui/ui-material/src/androidTest/java/androidx/ui/material/DrawerTest.kt
@@ -18,6 +18,7 @@
 
 import android.os.SystemClock.sleep
 import androidx.compose.Model
+import androidx.compose.emptyContent
 import androidx.test.filters.MediumTest
 import androidx.ui.core.OnChildPositioned
 import androidx.ui.core.OnPositioned
@@ -68,7 +69,7 @@
                         position = coords.localToGlobal(PxPosition.Origin)
                     }
                 }
-            }) {}
+            }, bodyContent = emptyContent())
         }
         composeTestRule.runOnIdleCompose {
             assertThat(position!!.x.value).isEqualTo(0f)
@@ -85,7 +86,7 @@
                         position = coords.localToGlobal(PxPosition.Origin)
                     }
                 }
-            }) {}
+            }, bodyContent = emptyContent())
         }
         val width = composeTestRule.displayMetrics.widthPixels
         composeTestRule.runOnIdleCompose {
@@ -103,7 +104,7 @@
                         size = coords.size
                     }
                 }
-            }) {}
+            }, bodyContent = emptyContent())
         }
 
         val width = composeTestRule.displayMetrics.widthPixels
@@ -123,7 +124,7 @@
                         position = coords.localToGlobal(PxPosition.Origin)
                     }
                 }
-            }) {}
+            }, bodyContent = emptyContent())
         }
 
         val width = composeTestRule.displayMetrics.widthPixels
@@ -145,7 +146,7 @@
                         position = coords.localToGlobal(PxPosition.Origin)
                     }
                 }
-            }) {}
+            }, bodyContent = emptyContent())
         }
         val height = composeTestRule.displayMetrics.heightPixels
         composeTestRule.runOnIdleCompose {
@@ -158,7 +159,7 @@
         composeTestRule
             .setMaterialContentAndCollectSizes {
                 StaticDrawer {
-                    Container(expanded = true) {}
+                    Container(expanded = true, children = emptyContent())
                 }
             }
             .assertWidthEqualsTo(256.dp)
@@ -186,12 +187,12 @@
                                     closedLatch?.countDown()
                                 }
                             }) {
-                                Container(expanded = true) {}
+                                Container(expanded = true, children = emptyContent())
                             }
                         },
                         bodyContent = {
                             OnChildPositioned({ contentWidth = it.size.width }) {
-                                Container(expanded = true) {}
+                                Container(expanded = true, children = emptyContent())
                             }
                         })
                 }
@@ -229,12 +230,12 @@
                     ModalDrawerLayout(drawerState.state, { drawerState.state = it },
                         drawerContent = {
                             Clickable( drawerClicks += 1 }) {
-                                Container(expanded = true) {}
+                                Container(expanded = true, children = emptyContent())
                             }
                         },
                         bodyContent = {
                             Clickable( bodyClicks += 1 }) {
-                                Container(expanded = true) {}
+                                Container(expanded = true, children = emptyContent())
                             }
                         })
                 }
@@ -288,7 +289,7 @@
                                     closedLatch?.countDown()
                                 }
                             }) {
-                                Container(expanded = true) {}
+                                Container(expanded = true, children = emptyContent())
                             }
                         },
                         bodyContent = {
@@ -296,7 +297,7 @@
                                 contentHeight = it.size.height
                                 openedHeight = it.size.height * BottomDrawerOpenFraction
                             }) {
-                                Container(expanded = true) {}
+                                Container(expanded = true, children = emptyContent())
                             }
                         })
                 }
@@ -334,12 +335,12 @@
                     BottomDrawerLayout(drawerState.state, { drawerState.state = it },
                         drawerContent = {
                             Clickable( drawerClicks += 1 }) {
-                                Container(expanded = true) {}
+                                Container(expanded = true, children = emptyContent())
                             }
                         },
                         bodyContent = {
                             Clickable( bodyClicks += 1 }) {
-                                Container(expanded = true) {}
+                                Container(expanded = true, children = emptyContent())
                             }
                         })
                 }
diff --git a/ui/ui-material/src/androidTest/java/androidx/ui/material/ElevationOverlayTest.kt b/ui/ui-material/src/androidTest/java/androidx/ui/material/ElevationOverlayTest.kt
index a5c142a..3d218d8 100644
--- a/ui/ui-material/src/androidTest/java/androidx/ui/material/ElevationOverlayTest.kt
+++ b/ui/ui-material/src/androidTest/java/androidx/ui/material/ElevationOverlayTest.kt
@@ -17,6 +17,7 @@
 package androidx.ui.material
 
 import android.os.Build
+import androidx.compose.emptyContent
 import androidx.test.filters.LargeTest
 import androidx.test.filters.SdkSuppress
 import androidx.ui.core.TestTag
@@ -102,8 +103,9 @@
                                 Semantics(container = true) {
                                     Container(
                                         width = SurfaceSize.width.toDp(),
-                                        height = SurfaceSize.height.toDp()
-                                    ) {}
+                                        height = SurfaceSize.height.toDp(),
+                                        children = emptyContent()
+                                    )
                                 }
                             }
                         }
diff --git a/ui/ui-material/src/androidTest/java/androidx/ui/material/RippleEffectTest.kt b/ui/ui-material/src/androidTest/java/androidx/ui/material/RippleEffectTest.kt
index 6bdb40a..a111161 100644
--- a/ui/ui-material/src/androidTest/java/androidx/ui/material/RippleEffectTest.kt
+++ b/ui/ui-material/src/androidTest/java/androidx/ui/material/RippleEffectTest.kt
@@ -19,6 +19,7 @@
 import androidx.compose.Composable
 import androidx.compose.Model
 import androidx.compose.Providers
+import androidx.compose.emptyContent
 import androidx.test.filters.MediumTest
 import androidx.ui.core.LayoutCoordinates
 import androidx.ui.core.TestTag
@@ -268,7 +269,7 @@
     private fun RippleButton(size: Dp? = null, color: Color? = null, enabled: Boolean = true) {
         Ripple(bounded = false, color = color, enabled = enabled) {
             Clickable( {
-                Container(width = size, height = size) {}
+                Container(width = size, height = size, children = emptyContent())
             }
         }
     }
diff --git a/ui/ui-material/src/main/java/androidx/ui/material/Tab.kt b/ui/ui-material/src/main/java/androidx/ui/material/Tab.kt
index fba06a6..bdb5500 100644
--- a/ui/ui-material/src/main/java/androidx/ui/material/Tab.kt
+++ b/ui/ui-material/src/main/java/androidx/ui/material/Tab.kt
@@ -20,6 +20,7 @@
 import androidx.animation.LinearEasing
 import androidx.animation.transitionDefinition
 import androidx.compose.Composable
+import androidx.compose.emptyContent
 import androidx.compose.remember
 import androidx.compose.state
 import androidx.ui.animation.ColorPropKey
@@ -658,7 +659,7 @@
  */
 @Composable
 private fun TabTextBaselineLayout(
-    icon: @Composable() (() -> Unit) = {},
+    icon: @Composable() () -> Unit = emptyContent(),
     text: @Composable() () -> Unit
 ) {
     Layout(