Skip to content

Instantly share code, notes, and snippets.

@pauloaapereira
Created March 18, 2021 19:10
Show Gist options
  • Save pauloaapereira/17f80662815204c9dc603d67a3939780 to your computer and use it in GitHub Desktop.
Save pauloaapereira/17f80662815204c9dc603d67a3939780 to your computer and use it in GitHub Desktop.
AndroidDevChallenge_Week4_JetWeatherfy_3
@Composable
fun Curtain(
isOpenedFromOutside: Boolean? = null,
foldingDuration: Int = 250,
mainCell: @Composable () -> Unit,
foldCells: List<@Composable () -> Unit>
) {
var isOpened by remember { mutableStateOf(false) }
var isTransitionRunning by remember { mutableStateOf(false) }
val foldScope = rememberCoroutineScope()
fun toggleCurtain() {
if (!isTransitionRunning) {
isTransitionRunning = true
isOpened = !isOpened
foldScope.launch {
delay(foldingDuration.toLong() * foldCells.size)
isTransitionRunning = false
}
}
}
...
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment