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

Commit 4ffabcef authored by Charlotte Lu's avatar Charlotte Lu Committed by Android (Google) Code Review
Browse files

Merge "Enable checkBox check." into main

parents 22b818af ec7ea00b
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -46,11 +46,13 @@ object SettingsExposedDropdownMenuCheckBoxProvider : SettingsPageProvider {
    @Composable
    override fun Page(arguments: Bundle?) {
        RegularScaffold(title = TITLE) {
            SettingsExposedDropdownMenuCheckBox(label = exposedDropdownMenuCheckBoxLabel,
            SettingsExposedDropdownMenuCheckBox(
                label = exposedDropdownMenuCheckBoxLabel,
                options = options,
                selectedOptionsState = remember { selectedOptionsState1 },
                enabled = true,
                onselectedOptionStateChange = {})
                onSelectedOptionStateChange = {},
            )
        }
    }

+22 −18
Original line number Diff line number Diff line
@@ -52,7 +52,7 @@ fun SettingsExposedDropdownMenuCheckBox(
    options: List<String>,
    selectedOptionsState: SnapshotStateList<String>,
    enabled: Boolean,
    onselectedOptionStateChange: (String) -> Unit,
    onSelectedOptionStateChange: () -> Unit,
) {
    var dropDownWidth by remember { mutableStateOf(0) }
    var expanded by remember { mutableStateOf(false) }
@@ -70,7 +70,7 @@ fun SettingsExposedDropdownMenuCheckBox(
                .menuAnchor()
                .fillMaxWidth(),
            value = selectedOptionsState.joinToString(", "),
            onValueChange = onselectedOptionStateChange,
            onValueChange = {},
            label = { Text(text = label) },
            trailingIcon = {
                ExposedDropdownMenuDefaults.TrailingIcon(
@@ -89,9 +89,11 @@ fun SettingsExposedDropdownMenuCheckBox(
                onDismissRequest = { expanded = false },
            ) {
                options.forEach { option ->
                    TextButton(modifier = Modifier
                    TextButton(
                        modifier = Modifier
                            .fillMaxHeight()
                        .fillMaxWidth(), onClick = {
                            .fillMaxWidth(),
                        onClick = {
                            if (selectedOptionsState.contains(option)) {
                                selectedOptionsState.remove(
                                    option
@@ -101,6 +103,7 @@ fun SettingsExposedDropdownMenuCheckBox(
                                    option
                                )
                            }
                            onSelectedOptionStateChange()
                    }) {
                        Row(
                            modifier = Modifier
@@ -109,9 +112,10 @@ fun SettingsExposedDropdownMenuCheckBox(
                            horizontalArrangement = Arrangement.Start,
                            verticalAlignment = Alignment.CenterVertically
                        ) {
                            Checkbox(checked = selectedOptionsState.contains(
                                option
                            ), onCheckedChange = {})
                            Checkbox(
                                checked = selectedOptionsState.contains(option),
                                onCheckedChange = null,
                            )
                            Text(text = option)
                        }
                    }
@@ -131,6 +135,6 @@ private fun ActionButtonsPreview() {
            options = options,
            selectedOptionsState = selectedOptionsState,
            enabled = true,
            onselectedOptionStateChange = {})
            onSelectedOptionStateChange = {})
    }
}
 No newline at end of file
+12 −8
Original line number Diff line number Diff line
@@ -45,11 +45,12 @@ class SettingsExposedDropdownMenuCheckBoxTest {
    @Test
    fun exposedDropdownMenuCheckBox_displayed() {
        composeTestRule.setContent {
            SettingsExposedDropdownMenuCheckBox(label = exposedDropdownMenuCheckBoxLabel,
            SettingsExposedDropdownMenuCheckBox(
                label = exposedDropdownMenuCheckBoxLabel,
                options = options,
                selectedOptionsState = remember { selectedOptionsState1 },
                enabled = true,
                onselectedOptionStateChange = {})
            ) {}
        }
        composeTestRule.onNodeWithText(
            exposedDropdownMenuCheckBoxLabel, substring = true
@@ -59,11 +60,12 @@ class SettingsExposedDropdownMenuCheckBoxTest {
    @Test
    fun exposedDropdownMenuCheckBox_expanded() {
        composeTestRule.setContent {
            SettingsExposedDropdownMenuCheckBox(label = exposedDropdownMenuCheckBoxLabel,
            SettingsExposedDropdownMenuCheckBox(
                label = exposedDropdownMenuCheckBoxLabel,
                options = options,
                selectedOptionsState = remember { selectedOptionsState1 },
                enabled = true,
                onselectedOptionStateChange = {})
            ) {}
        }
        composeTestRule.onNodeWithText(item3, substring = true).assertDoesNotExist()
        composeTestRule.onNodeWithText(exposedDropdownMenuCheckBoxLabel, substring = true)
@@ -74,11 +76,12 @@ class SettingsExposedDropdownMenuCheckBoxTest {
    @Test
    fun exposedDropdownMenuCheckBox_valueAdded() {
        composeTestRule.setContent {
            SettingsExposedDropdownMenuCheckBox(label = exposedDropdownMenuCheckBoxLabel,
            SettingsExposedDropdownMenuCheckBox(
                label = exposedDropdownMenuCheckBoxLabel,
                options = options,
                selectedOptionsState = remember { selectedOptionsState1 },
                enabled = true,
                onselectedOptionStateChange = {})
            ) {}
        }
        composeTestRule.onNodeWithText(item3, substring = true).assertDoesNotExist()
        composeTestRule.onNodeWithText(exposedDropdownMenuCheckBoxLabel, substring = true)
@@ -90,11 +93,12 @@ class SettingsExposedDropdownMenuCheckBoxTest {
    @Test
    fun exposedDropdownMenuCheckBox_valueDeleted() {
        composeTestRule.setContent {
            SettingsExposedDropdownMenuCheckBox(label = exposedDropdownMenuCheckBoxLabel,
            SettingsExposedDropdownMenuCheckBox(
                label = exposedDropdownMenuCheckBoxLabel,
                options = options,
                selectedOptionsState = remember { selectedOptionsState1 },
                enabled = true,
                onselectedOptionStateChange = {})
            ) {}
        }
        composeTestRule.onNodeWithText(item2, substring = true).assertIsDisplayed()
        composeTestRule.onNodeWithText(exposedDropdownMenuCheckBoxLabel, substring = true)