diff --git a/extensions-compose-jetpack/src/main/java/com/arkivanov/decompose/extensions/compose/jetpack/RouterStateComposable.kt b/extensions-compose-jetpack/src/main/java/com/arkivanov/decompose/extensions/compose/jetpack/RouterStateComposable.kt index d7cfdb15..92af725e 100644 --- a/extensions-compose-jetpack/src/main/java/com/arkivanov/decompose/extensions/compose/jetpack/RouterStateComposable.kt +++ b/extensions-compose-jetpack/src/main/java/com/arkivanov/decompose/extensions/compose/jetpack/RouterStateComposable.kt @@ -20,11 +20,22 @@ typealias ChildContent = @Composable (child: T, configuration: C) -> Unit typealias ChildAnimation = @Composable (child: T, configuration: C, ChildContent) -> Unit +@Composable +fun Children( + routerState: Value>, + content: ChildContent +) { + // Workaround https://github.com/arkivanov/Decompose/issues/25 + val animation: ChildAnimation = { child, configuration, function -> function(child, configuration) } + + Children(routerState = routerState, animation = animation, content = content) +} + @OptIn(ExperimentalRestorableStateHolder::class) @Composable fun Children( routerState: Value>, - animation: ChildAnimation = { child, configuration, childContent -> childContent(child, configuration) }, + animation: ChildAnimation, content: ChildContent ) { val holder = key(routerState) { rememberRestorableStateHolder() }