Placeholder Surface
fun PlaceholderSurface(animationSpec: InfiniteRepeatableSpec<Float> = DefaultPlaceholderCoordinatorSpec, content: @Composable () -> Unit)
Wraps content in a scope where every Modifier.placeholder(...) call shares a single PlaceholderCoordinator. Use this around a list, card grid, or any region where you want the shimmer to read as one synchronized motion.
Example:
PlaceholderSurface {
LazyColumn {
items(20) { SkeletonRow() } // all rows shimmer in sync
}
}Content copied to clipboard
Parameters
animation Spec
The shared infinite spec driving every placeholder in the scope. Per-highlight specs are ignored while inside this surface.