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

Commit 157e0c1f authored by Michal Brzezinski's avatar Michal Brzezinski
Browse files

Fix background color on tutorial success

Updating according to visd, not we don't change background color in tutorial after action success.
Also drive-by fix of title color in ActionTutorialScreen

Test: in light theme, complete tutorial and see nice background color vs very light background
Flag: com.android.systemui.shared.new_touchpad_gestures_tutorial
Bug: 309928033
Change-Id: Id17c9ae49d1200df77d9ab9978506681f205e73a
parent 0f05c16b
Loading
Loading
Loading
Loading
+2 −5
Original line number Diff line number Diff line
@@ -20,7 +20,6 @@ import androidx.activity.compose.BackHandler
import androidx.compose.foundation.focusable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
@@ -97,7 +96,6 @@ private fun rememberScreenColors(): TutorialScreenConfig.Colors {
    val secondaryFixedDim = LocalAndroidColorScheme.current.secondaryFixedDim
    val onSecondaryFixed = LocalAndroidColorScheme.current.onSecondaryFixed
    val onSecondaryFixedVariant = LocalAndroidColorScheme.current.onSecondaryFixedVariant
    val surfaceContainer = MaterialTheme.colorScheme.surfaceContainer
    val dynamicProperties =
        rememberLottieDynamicProperties(
            rememberColorFilterProperty(".primaryFixedDim", primaryFixedDim),
@@ -106,11 +104,10 @@ private fun rememberScreenColors(): TutorialScreenConfig.Colors {
            rememberColorFilterProperty(".onSecondaryFixedVariant", onSecondaryFixedVariant)
        )
    val screenColors =
        remember(surfaceContainer, dynamicProperties) {
        remember(dynamicProperties) {
            TutorialScreenConfig.Colors(
                background = onSecondaryFixed,
                successBackground = surfaceContainer,
                title = primaryFixedDim,
                title = secondaryFixedDim,
                animationColors = dynamicProperties,
            )
        }
+3 −11
Original line number Diff line number Diff line
@@ -24,13 +24,13 @@ import androidx.annotation.StringRes
import androidx.compose.animation.AnimatedContent
import androidx.compose.animation.EnterTransition
import androidx.compose.animation.ExitTransition
import androidx.compose.animation.animateColorAsState
import androidx.compose.animation.core.LinearEasing
import androidx.compose.animation.core.snap
import androidx.compose.animation.core.tween
import androidx.compose.animation.fadeIn
import androidx.compose.animation.fadeOut
import androidx.compose.animation.togetherWith
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
@@ -46,7 +46,6 @@ import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.drawBehind
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.toArgb
import androidx.compose.ui.res.stringResource
@@ -60,6 +59,7 @@ import com.airbnb.lottie.compose.LottieDynamicProperty
import com.airbnb.lottie.compose.animateLottieCompositionAsState
import com.airbnb.lottie.compose.rememberLottieComposition
import com.airbnb.lottie.compose.rememberLottieDynamicProperty
import com.android.compose.modifiers.background
import com.android.systemui.inputdevice.tutorial.ui.composable.TutorialActionState.FINISHED
import com.android.systemui.inputdevice.tutorial.ui.composable.TutorialActionState.IN_PROGRESS
import com.android.systemui.inputdevice.tutorial.ui.composable.TutorialActionState.NOT_STARTED
@@ -76,19 +76,11 @@ fun ActionTutorialContent(
    onDoneButtonClicked: () -> Unit,
    config: TutorialScreenConfig
) {
    val animatedColor by
        animateColorAsState(
            targetValue =
                if (actionState == FINISHED) config.colors.successBackground
                else config.colors.background,
            animationSpec = tween(durationMillis = 150, easing = LinearEasing),
            label = "backgroundColor"
        )
    Column(
        verticalArrangement = Arrangement.Center,
        modifier =
            Modifier.fillMaxSize()
                .drawBehind { drawRect(animatedColor) }
                .background(config.colors.background)
                .padding(start = 48.dp, top = 124.dp, end = 48.dp, bottom = 48.dp)
    ) {
        Row(modifier = Modifier.fillMaxWidth().weight(1f)) {
+0 −1
Original line number Diff line number Diff line
@@ -29,7 +29,6 @@ data class TutorialScreenConfig(

    data class Colors(
        val background: Color,
        val successBackground: Color,
        val title: Color,
        val animationColors: LottieDynamicProperties
    )
+1 −4
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package com.android.systemui.touchpad.tutorial.ui.composable

import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable
import androidx.compose.runtime.remember
import com.airbnb.lottie.compose.rememberLottieDynamicProperties
@@ -67,7 +66,6 @@ private fun rememberScreenColors(): TutorialScreenConfig.Colors {
    val onTertiaryFixed = LocalAndroidColorScheme.current.onTertiaryFixed
    val onTertiaryFixedVariant = LocalAndroidColorScheme.current.onTertiaryFixedVariant
    val tertiaryFixedDim = LocalAndroidColorScheme.current.tertiaryFixedDim
    val surfaceContainer = MaterialTheme.colorScheme.surfaceContainer
    val dynamicProperties =
        rememberLottieDynamicProperties(
            rememberColorFilterProperty(".tertiaryFixedDim", tertiaryFixedDim),
@@ -76,10 +74,9 @@ private fun rememberScreenColors(): TutorialScreenConfig.Colors {
            rememberColorFilterProperty(".onTertiaryFixedVariant", onTertiaryFixedVariant)
        )
    val screenColors =
        remember(onTertiaryFixed, surfaceContainer, tertiaryFixedDim, dynamicProperties) {
        remember(dynamicProperties) {
            TutorialScreenConfig.Colors(
                background = onTertiaryFixed,
                successBackground = surfaceContainer,
                title = tertiaryFixedDim,
                animationColors = dynamicProperties,
            )
+1 −4
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@

package com.android.systemui.touchpad.tutorial.ui.composable

import androidx.compose.material3.MaterialTheme
import androidx.compose.runtime.Composable
import androidx.compose.runtime.remember
import com.airbnb.lottie.compose.rememberLottieDynamicProperties
@@ -66,7 +65,6 @@ private fun rememberScreenColors(): TutorialScreenConfig.Colors {
    val primaryFixedDim = LocalAndroidColorScheme.current.primaryFixedDim
    val onPrimaryFixed = LocalAndroidColorScheme.current.onPrimaryFixed
    val onPrimaryFixedVariant = LocalAndroidColorScheme.current.onPrimaryFixedVariant
    val surfaceContainer = MaterialTheme.colorScheme.surfaceContainer
    val dynamicProperties =
        rememberLottieDynamicProperties(
            rememberColorFilterProperty(".primaryFixedDim", primaryFixedDim),
@@ -74,10 +72,9 @@ private fun rememberScreenColors(): TutorialScreenConfig.Colors {
            rememberColorFilterProperty(".onPrimaryFixedVariant", onPrimaryFixedVariant)
        )
    val screenColors =
        remember(surfaceContainer, dynamicProperties) {
        remember(dynamicProperties) {
            TutorialScreenConfig.Colors(
                background = onPrimaryFixed,
                successBackground = surfaceContainer,
                title = primaryFixedDim,
                animationColors = dynamicProperties,
            )