Compose Modifier
Common
Deprecated This API will create more invalidations of your modifier than necessary, so it's use is discouraged. Implementing the inspectableProperties method on ModifierNodeElement is the recommended zero-cost alternative to exposing properties on a Modifier to tooling.
inline fun Modifier.inspectable(
noinline inspectorInfo: InspectorInfo.() -> Unit,
factory: Modifier.() -> Modifier,
): Modifier
Use this to group a common set of modifiers and provide InspectorInfo for the resulting modifier.
Code Examples
InspectableModifierSample
@Composable
@Suppress("DEPRECATION")
fun InspectableModifierSample() {
/** Sample with a single parameter */
fun Modifier.simpleFrame(color: Color) =
inspectable(
inspectorInfo =
debugInspectorInfo {
name = "simpleFrame"
value = color
}
) {
background(color, RoundedCornerShape(5.0.dp))
}
/** Sample with multiple parameters */
fun Modifier.fancyFrame(size: Dp, color: Color) =
inspectable(
inspectorInfo =
debugInspectorInfo {
name = "fancyFrame"
properties["size"] = size
properties["color"] = color
}
) {
background(color, RoundedCornerShape(size))
}
}