Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7cbe5615 authored by Michael Mikhail's avatar Michael Mikhail
Browse files

Avoid null check on play/pause button

Flag: com.android.systemui.media_controls_in_compose
Flag: com.android.systemui.scene_container
Fixes: 439670613
Test: Checked UI, taps on seekbar.
Change-Id: Ibdd690cf4eca00d15c41dcad3517fb52198e8c81
parent 48d2463d
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -621,7 +621,7 @@ private fun ContentScope.CardForegroundContent(
                if (viewModel.actionButtonLayout == MediaCardActionButtonLayout.WithPlayPause) {
                    AnimatedVisibility(visible = viewModel.playPauseAction != null) {
                        PlayPauseAction(
                            viewModel = checkNotNull(viewModel.playPauseAction),
                            viewModel = viewModel.playPauseAction,
                            buttonSize = playPauseSize,
                            buttonColor = colorScheme.primary,
                            iconColor = colorScheme.onPrimary,
@@ -703,7 +703,7 @@ private fun ContentScope.CardForegroundContent(
                if (viewModel.actionButtonLayout == MediaCardActionButtonLayout.WithPlayPause) {
                    AnimatedVisibility(visible = viewModel.playPauseAction != null) {
                        PlayPauseAction(
                            viewModel = checkNotNull(viewModel.playPauseAction),
                            viewModel = viewModel.playPauseAction,
                            buttonSize = playPauseSize,
                            buttonColor = colorScheme.primary,
                            iconColor = colorScheme.onPrimary,
@@ -772,7 +772,7 @@ private fun ContentScope.CompactCardForeground(

        AnimatedVisibility(visible = viewModel.playPauseAction != null) {
            PlayPauseAction(
                viewModel = checkNotNull(viewModel.playPauseAction),
                viewModel = viewModel.playPauseAction,
                buttonSize = DpSize(width = 72.dp, height = 48.dp),
                buttonColor = MaterialTheme.colorScheme.primaryContainer,
                iconColor = MaterialTheme.colorScheme.onPrimaryContainer,
@@ -1263,13 +1263,15 @@ private fun DeviceChip(
/** Renders the primary action of media controls: the play/pause button. */
@Composable
private fun ContentScope.PlayPauseAction(
    viewModel: MediaPlayPauseActionViewModel,
    viewModel: MediaPlayPauseActionViewModel?,
    buttonSize: DpSize,
    buttonColor: Color,
    iconColor: Color,
    buttonCornerRadius: (isPlaying: Boolean) -> Dp,
    modifier: Modifier = Modifier,
) {
    if (viewModel == null) return

    val cornerRadius: Dp by
        animateDpAsState(
            targetValue = buttonCornerRadius(viewModel.state != MediaSessionState.Paused),