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-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(