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

Commit 76e0aa28 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Modify the width and padding of the new editor in spa." into main

parents 3679b887 570cb9b7
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
                        ) {