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

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

Merge "Add SettingsTextFieldPassword." into main

parents b5bd4322 cfa73935
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -36,6 +36,7 @@ import com.android.settingslib.spa.framework.compose.stateOf
import com.android.settingslib.spa.widget.editor.SettingsExposedDropdownMenuBox
import com.android.settingslib.spa.widget.editor.SettingsExposedDropdownMenuCheckBox
import com.android.settingslib.spa.widget.editor.SettingsOutlinedTextField
import com.android.settingslib.spa.widget.editor.SettingsTextFieldPassword
import com.android.settingslib.spa.widget.preference.SwitchPreference
import com.android.settingslib.spa.widget.preference.SwitchPreferenceModel
import com.android.settingslib.spa.widget.scaffold.RegularScaffold
@@ -123,7 +124,10 @@ fun ApnPage(apnDataCur: MutableState<ApnData>) {
                stringResource(R.string.apn_user),
                enabled = apnData.userNameEnabled
            ) { apnData = apnData.copy(userName = it) }
            // TODO: password
            SettingsTextFieldPassword(
                apnData.passWord,
                stringResource(R.string.apn_password)
            ) { apnData = apnData.copy(passWord = it) }
            SettingsOutlinedTextField(
                apnData.server,
                stringResource(R.string.apn_server),
+8 −0
Original line number Diff line number Diff line
@@ -71,6 +71,14 @@ data class ApnData(
    var mvnoValueEnabled = false
}

/**
 * Initialize the selected Bearer Selected Options according to bearer.
 * @param bearer Initialized bearer options.
 * @param bearerBitmask Initialized bearer bitmask, often multiple bearer options may be included.
 * @param context The context to get bearerValues.
 *
 * @return An error message if the apn data is invalid, otherwise return null.
 */
fun getBearerSelectedOptionsState(
    bearer: Int,
    bearerBitmask: Int,
+13 −0
Original line number Diff line number Diff line
@@ -59,6 +59,7 @@ class ApnEditPageProviderTest {
        context.resources.getStringArray(R.array.apn_protocol_entries).toList()
    private val bearer = context.resources.getString(R.string.bearer)
    private val bearerOptions = context.resources.getStringArray(R.array.bearer_entries).toList()
    private val passwordTitle = context.resources.getString(R.string.apn_password)
    private val apnData = mutableStateOf(
        ApnData(
            name = apnName,
@@ -241,4 +242,16 @@ class ApnEditPageProviderTest {
        composeTestRule.onNode(hasText(bearerOptions[0]) and isFocused(), true).assertIsDisplayed()
        composeTestRule.onNode(hasText(bearerOptions[1]) and isFocused(), true).assertDoesNotExist()
    }

    @Test
    fun password_displayed() {
        composeTestRule.setContent {
            ApnPage(remember {
                apnData
            })
        }
        composeTestRule.onRoot().onChild().onChildAt(0)
            .performScrollToNode(hasText(passwordTitle, true))
        composeTestRule.onNodeWithText(passwordTitle, true).assertIsDisplayed()
    }
}
 No newline at end of file