diff options
author | 2025-03-13 14:04:02 -0700 | |
---|---|---|
committer | 2025-03-13 14:04:02 -0700 | |
commit | 158797c61f79e5642d867a00cec2cbc42d492311 (patch) | |
tree | 35c9769334521a9022ff571d20578bd24622d12d | |
parent | 70d5d0cdc4d94c0625c0f3306411cd345f8f5503 (diff) | |
parent | f6c380786b35cc5f05d07d1b9d95d28b43a03c14 (diff) |
Merge "[QSDetailedView] Polish the TileDetails UI" into main
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/TileDetails.kt | 41 |
1 files changed, 35 insertions, 6 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/TileDetails.kt b/packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/TileDetails.kt index d40ecc9565ae..1176095fbb1c 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/TileDetails.kt +++ b/packages/SystemUI/src/com/android/systemui/qs/panels/ui/compose/TileDetails.kt @@ -16,6 +16,7 @@ package com.android.systemui.qs.panels.ui.compose +import androidx.compose.foundation.background import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row @@ -23,11 +24,13 @@ import androidx.compose.foundation.layout.fillMaxHeight import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.width import androidx.compose.material.icons.Icons import androidx.compose.material.icons.automirrored.filled.ArrowBack import androidx.compose.material.icons.filled.Settings import androidx.compose.material3.Icon import androidx.compose.material3.IconButton +import androidx.compose.material3.IconButtonDefaults import androidx.compose.material3.LocalContentColor import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text @@ -63,6 +66,7 @@ fun TileDetails(modifier: Modifier = Modifier, detailsViewModel: DetailsViewMode val title = tileDetailedViewModel.title val subTitle = tileDetailedViewModel.subTitle + val colors = MaterialTheme.colorScheme Column( modifier = @@ -70,20 +74,33 @@ fun TileDetails(modifier: Modifier = Modifier, detailsViewModel: DetailsViewMode .fillMaxWidth() // The height of the details view is TBD. .fillMaxHeight() + .background(color = colors.onPrimary) ) { CompositionLocalProvider( value = LocalContentColor provides MaterialTheme.colorScheme.onSurfaceVariant ) { Row( - modifier = Modifier.fillMaxWidth(), + modifier = Modifier + .fillMaxWidth() + .padding( + start = TileDetailsDefaults.TitleRowStart, + top = TileDetailsDefaults.TitleRowTop, + end = TileDetailsDefaults.TitleRowEnd, + bottom = TileDetailsDefaults.TitleRowBottom + ), horizontalArrangement = Arrangement.SpaceBetween, verticalAlignment = Alignment.CenterVertically, ) { IconButton( onClick = { detailsViewModel.closeDetailedView() }, + colors = IconButtonDefaults.iconButtonColors( + contentColor = colors.onSurface + ), modifier = - Modifier.align(Alignment.CenterVertically) + Modifier + .align(Alignment.CenterVertically) .height(TileDetailsDefaults.IconHeight) + .width(TileDetailsDefaults.IconWidth) .padding(start = TileDetailsDefaults.IconPadding), ) { Icon( @@ -96,13 +113,19 @@ fun TileDetails(modifier: Modifier = Modifier, detailsViewModel: DetailsViewMode text = title, modifier = Modifier.align(Alignment.CenterVertically), textAlign = TextAlign.Center, - style = MaterialTheme.typography.titleLarge, + style = MaterialTheme.typography.titleMedium, + color = colors.onSurface, ) IconButton( onClick = { tileDetailedViewModel.clickOnSettingsButton() }, + colors = IconButtonDefaults.iconButtonColors( + contentColor = colors.onSurface + ), modifier = - Modifier.align(Alignment.CenterVertically) + Modifier + .align(Alignment.CenterVertically) .height(TileDetailsDefaults.IconHeight) + .width(TileDetailsDefaults.IconWidth) .padding(end = TileDetailsDefaults.IconPadding), ) { Icon( @@ -116,7 +139,8 @@ fun TileDetails(modifier: Modifier = Modifier, detailsViewModel: DetailsViewMode text = subTitle, modifier = Modifier.fillMaxWidth(), textAlign = TextAlign.Center, - style = MaterialTheme.typography.titleSmall, + style = MaterialTheme.typography.bodySmall, + color = colors.onSurfaceVariant, ) } MapTileDetailsContent(tileDetailedViewModel) @@ -135,6 +159,11 @@ private fun MapTileDetailsContent(tileDetailsViewModel: TileDetailsViewModel) { } private object TileDetailsDefaults { - val IconHeight = 48.dp + val IconHeight = 24.dp + val IconWidth = 24.dp val IconPadding = 4.dp + val TitleRowStart = 14.dp + val TitleRowTop = 22.dp + val TitleRowEnd = 20.dp + val TitleRowBottom = 8.dp } |