Make play/pause animation easing linear (#183)

This commit is contained in:
vfsfitvnm 2022-08-10 14:06:51 +02:00
parent 349474ba1f
commit c37bf67d20

View file

@ -1,8 +1,11 @@
package it.vfsfitvnm.vimusic.ui.views.player
import android.text.format.DateUtils
import androidx.compose.animation.core.LinearEasing
import androidx.compose.animation.core.animateDp
import androidx.compose.animation.core.animateDpAsState
import androidx.compose.animation.core.tween
import androidx.compose.animation.core.updateTransition
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
import androidx.compose.foundation.clickable
@ -72,7 +75,13 @@ fun Controls(
Database.likedAt(mediaItem.mediaId).distinctUntilChanged()
}.collectAsState(initial = null, context = Dispatchers.IO)
val playPauseRoundness by animateDpAsState(if (shouldBePlaying) 32.dp else 16.dp, tween())
val shouldBePlayingTransition = updateTransition(shouldBePlaying, label = "shouldBePlaying")
val playPauseRoundness by shouldBePlayingTransition.animateDp(
transitionSpec = { tween(durationMillis = 100, easing = LinearEasing) },
label = "playPauseRoundness",
targetValueByState = { if (it) 32.dp else 16.dp }
)
Column(
horizontalAlignment = Alignment.CenterHorizontally,