diff options
| author | 2024-09-03 13:50:48 +0000 | |
|---|---|---|
| committer | 2024-09-03 13:50:48 +0000 | |
| commit | 67f04bee22a65a70dfd042e627afac1d91f14caa (patch) | |
| tree | f76682369508abbbbe9f103fcc3b027221129430 | |
| parent | 5c132c678f591d9cae9fd37944e9cac8950da579 (diff) | |
| parent | b4e988b796e843196f210dc03251fc765f355234 (diff) | |
Merge "Animate color change of mode activation/deactivation" into main
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/policy/ui/dialog/composable/ModeTile.kt | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/ui/dialog/composable/ModeTile.kt b/packages/SystemUI/src/com/android/systemui/statusbar/policy/ui/dialog/composable/ModeTile.kt index cacb3843866b..0e88f44e0152 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/ui/dialog/composable/ModeTile.kt +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/ui/dialog/composable/ModeTile.kt @@ -16,6 +16,7 @@ package com.android.systemui.statusbar.policy.ui.dialog.composable +import androidx.compose.animation.animateColorAsState import androidx.compose.foundation.basicMarquee import androidx.compose.foundation.combinedClickable import androidx.compose.foundation.layout.Arrangement @@ -30,8 +31,10 @@ import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider +import androidx.compose.runtime.getValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color import androidx.compose.ui.platform.testTag import androidx.compose.ui.semantics.clearAndSetSemantics import androidx.compose.ui.semantics.contentDescription @@ -44,12 +47,16 @@ import com.android.systemui.statusbar.policy.ui.dialog.viewmodel.ModeTileViewMod @Composable fun ModeTile(viewModel: ModeTileViewModel) { - val tileColor = - if (viewModel.enabled) MaterialTheme.colorScheme.primary - else MaterialTheme.colorScheme.surfaceVariant - val contentColor = - if (viewModel.enabled) MaterialTheme.colorScheme.onPrimary - else MaterialTheme.colorScheme.onSurfaceVariant + val tileColor: Color by + animateColorAsState( + if (viewModel.enabled) MaterialTheme.colorScheme.primary + else MaterialTheme.colorScheme.surfaceVariant + ) + val contentColor: Color by + animateColorAsState( + if (viewModel.enabled) MaterialTheme.colorScheme.onPrimary + else MaterialTheme.colorScheme.onSurfaceVariant + ) CompositionLocalProvider(LocalContentColor provides contentColor) { Surface( |