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

Commit 412bff67 authored by cocod's avatar cocod
Browse files

Adjust font and spacing inside CTA tile

Set button text size to 14dp to address
1) font size too small
2) text disappearing when scaled with font size settings
Also adjusted paddings to match spec.

Bug: b/346672101
Test: change font size in settings and verify CTA tile still
rendering to spec
Flag: com.android.systemui.communal_hub

Change-Id: Ia83b72bc3dafd02a16c4c5cab8339ebfb0dbf1c6
parent 26cd5061
Loading
Loading
Loading
Loading
+22 −12
Original line number Diff line number Diff line
@@ -49,6 +49,7 @@ import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.RowScope
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.fillMaxHeight
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
@@ -124,7 +125,6 @@ import androidx.compose.ui.unit.IntOffset
import androidx.compose.ui.unit.IntSize
import androidx.compose.ui.unit.LayoutDirection
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import androidx.compose.ui.unit.times
import androidx.compose.ui.viewinterop.AndroidView
import androidx.compose.ui.window.Popup
@@ -911,7 +911,8 @@ private fun CtaTileInViewModeContent(
        shape = RoundedCornerShape(68.dp, 34.dp, 68.dp, 34.dp)
    ) {
        Column(
            modifier = Modifier.fillMaxSize().padding(vertical = 38.dp, horizontal = 70.dp),
            modifier = Modifier.fillMaxSize().padding(vertical = 32.dp, horizontal = 50.dp),
            verticalArrangement = Arrangement.Center,
            horizontalAlignment = Alignment.CenterHorizontally,
        ) {
            Icon(
@@ -922,41 +923,43 @@ private fun CtaTileInViewModeContent(
            Spacer(modifier = Modifier.size(6.dp))
            Text(
                text = stringResource(R.string.cta_label_to_edit_widget),
                style = MaterialTheme.typography.titleMedium,
                textAlign = TextAlign.Center,
                style = MaterialTheme.typography.titleLarge,
                fontSize = nonScalableTextSize(22.dp),
                lineHeight = nonScalableTextSize(28.dp),
            )
            Spacer(modifier = Modifier.size(20.dp))
            Spacer(modifier = Modifier.size(16.dp))
            Row(
                modifier = Modifier.fillMaxWidth(),
                horizontalArrangement = Arrangement.Center,
                modifier = Modifier.fillMaxWidth().height(56.dp),
                horizontalArrangement = Arrangement.spacedBy(16.dp, Alignment.CenterHorizontally),
            ) {
                OutlinedButton(
                    modifier = Modifier.fillMaxHeight(),
                    colors =
                        ButtonDefaults.buttonColors(
                            contentColor = colors.onPrimary,
                        ),
                    border = BorderStroke(width = 1.0.dp, color = colors.primaryContainer),
                    contentPadding = Dimensions.ButtonPadding,
                    contentPadding = PaddingValues(26.dp, 8.dp),
                    onClick = viewModel::onDismissCtaTile,
                ) {
                    Text(
                        text = stringResource(R.string.cta_tile_button_to_dismiss),
                        fontSize = 12.sp,
                        fontSize = nonScalableTextSize(14.dp),
                    )
                }
                Spacer(modifier = Modifier.size(14.dp))
                Button(
                    modifier = Modifier.fillMaxHeight(),
                    colors =
                        ButtonDefaults.buttonColors(
                            containerColor = colors.primaryContainer,
                            contentColor = colors.onPrimaryContainer,
                        ),
                    contentPadding = Dimensions.ButtonPadding,
                    contentPadding = PaddingValues(26.dp, 8.dp),
                    onClick = viewModel::onOpenWidgetEditor
                ) {
                    Text(
                        text = stringResource(R.string.cta_tile_button_to_open_widget_editor),
                        fontSize = 12.sp,
                        fontSize = nonScalableTextSize(14.dp),
                    )
                }
            }
@@ -1268,6 +1271,13 @@ fun AccessibilityContainer(viewModel: BaseCommunalViewModel, content: @Composabl
    }
}

/**
 * Text size converted from dp value to the equivalent sp value using the current screen density,
 * ensuring it does not scale with the font size setting.
 */
@Composable
private fun nonScalableTextSize(sizeInDp: Dp) = with(LocalDensity.current) { sizeInDp.toSp() }

/**
 * Returns the `contentPadding` of the grid. Use the vertical padding to push the grid content area
 * below the toolbar and let the grid take the max size. This ensures the item can be dragged