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

Commit 570cb9b7 authored by Charlotte Lu's avatar Charlotte Lu
Browse files

Modify the width and padding of the new editor in spa.

Fix: 298906347
Test: Unit Test
Change-Id: I6c3bc9cd0c0434f9a071aaa15cab372e22c824ff
parent 0253bd2c
Loading
Loading
Loading
Loading
+6 −3
Original line number Diff line number Diff line
@@ -18,20 +18,22 @@ package com.android.settingslib.spa.widget.editor

import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.width
import androidx.compose.material3.DropdownMenuItem
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.ExposedDropdownMenuBox
import androidx.compose.material3.ExposedDropdownMenuDefaults
import androidx.compose.material3.OutlinedTextField
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import com.android.settingslib.spa.framework.theme.SettingsDimension
import androidx.compose.material3.ExposedDropdownMenuBox
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import com.android.settingslib.spa.framework.theme.SettingsDimension
import com.android.settingslib.spa.framework.theme.SettingsTheme

@Composable
@@ -48,6 +50,7 @@ fun SettingsExposedDropdownMenuBox(
        expanded = expanded,
        onExpandedChange = { expanded = it },
        modifier = Modifier
            .width(350.dp)
            .padding(SettingsDimension.itemPadding),
    ) {
        OutlinedTextField(
+15 −10
Original line number Diff line number Diff line
@@ -59,16 +59,16 @@ fun SettingsExposedDropdownMenuCheckBox(
    ExposedDropdownMenuBox(
        expanded = expanded,
        onExpandedChange = { expanded = it },
        modifier = Modifier.width(350.dp).padding(
            horizontal = SettingsDimension.itemPaddingEnd,
            vertical = SettingsDimension.itemPaddingVertical
        ).onSizeChanged {
            dropDownWidth = it.width
        },
        modifier = Modifier
            .width(350.dp)
            .padding(SettingsDimension.itemPadding)
            .onSizeChanged { dropDownWidth = it.width },
    ) {
        OutlinedTextField(
            // The `menuAnchor` modifier must be passed to the text field for correctness.
            modifier = Modifier.menuAnchor().fillMaxWidth(),
            modifier = Modifier
                .menuAnchor()
                .fillMaxWidth(),
            value = selectedOptionsState.joinToString(", "),
            onValueChange = onselectedOptionStateChange,
            label = { Text(text = label) },
@@ -83,12 +83,15 @@ fun SettingsExposedDropdownMenuCheckBox(
        if (options.isNotEmpty()) {
            ExposedDropdownMenu(
                expanded = expanded,
                modifier = Modifier.fillMaxWidth()
                modifier = Modifier
                    .fillMaxWidth()
                    .width(with(LocalDensity.current) { dropDownWidth.toDp() }),
                onDismissRequest = { expanded = false },
            ) {
                options.forEach { option ->
                    TextButton(modifier = Modifier.fillMaxHeight().fillMaxWidth(), onClick = {
                    TextButton(modifier = Modifier
                        .fillMaxHeight()
                        .fillMaxWidth(), onClick = {
                        if (selectedOptionsState.contains(option)) {
                            selectedOptionsState.remove(
                                option
@@ -100,7 +103,9 @@ fun SettingsExposedDropdownMenuCheckBox(
                        }
                    }) {
                        Row(
                            modifier = Modifier.fillMaxHeight().fillMaxWidth(),
                            modifier = Modifier
                                .fillMaxHeight()
                                .fillMaxWidth(),
                            horizontalArrangement = Arrangement.Start,
                            verticalAlignment = Alignment.CenterVertically
                        ) {