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

Commit c2fbd331 authored by Yuchen Sun's avatar Yuchen Sun Committed by Android (Google) Code Review
Browse files

Merge "[expressive design] Update dropdown layout." into main

parents 0297b037 fb485c16
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -25,6 +25,9 @@ object SettingsDimension {
    val paddingLarge = 16.dp
    val paddingExtraLarge = 24.dp

    val spinnerHorizontalPadding = paddingExtraLarge
    val spinnerVerticalPadding = paddingLarge

    val itemIconSize = 24.dp
    val itemIconContainerSize = 72.dp
    val itemPaddingStart = paddingExtraLarge
+10 −2
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ import androidx.compose.ui.semantics.semantics
import androidx.compose.ui.unit.dp
import com.android.settingslib.spa.framework.theme.SettingsDimension
import com.android.settingslib.spa.framework.theme.SettingsTheme
import com.android.settingslib.spa.framework.theme.isSpaExpressiveEnabled

data class SpinnerOption(
    val id: Int,
@@ -70,7 +71,10 @@ fun Spinner(options: List<SpinnerOption>, selectedId: Int?, setId: (id: Int) ->
            )
            .selectableGroup(),
    ) {
        val contentPadding = PaddingValues(horizontal = SettingsDimension.itemPaddingEnd)
        val contentPadding = if (isSpaExpressiveEnabled) PaddingValues(
            horizontal = SettingsDimension.spinnerHorizontalPadding,
            vertical = SettingsDimension.spinnerVerticalPadding
        ) else PaddingValues(horizontal = SettingsDimension.itemPaddingEnd)
        Button(
            modifier = Modifier.semantics { role = Role.DropdownList },
            onClick = { expanded = true },
@@ -129,7 +133,11 @@ private fun SpinnerText(
        text = option?.text ?: "",
        modifier = modifier
            .padding(end = SettingsDimension.itemPaddingEnd)
            .padding(vertical = SettingsDimension.itemPaddingAround),
            .then(
                if (!isSpaExpressiveEnabled)
                    Modifier.padding(vertical = SettingsDimension.itemPaddingAround)
                else Modifier
            ),
        color = color,
        style = MaterialTheme.typography.labelLarge,
    )