Loading packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/editor/EditorMainPageProvider.kt +18 −22 Original line number Diff line number Diff line Loading @@ -18,41 +18,37 @@ package com.android.settingslib.spa.gallery.editor import android.os.Bundle import androidx.compose.runtime.Composable import com.android.settingslib.spa.framework.common.SettingsEntry import com.android.settingslib.spa.framework.common.SettingsPageProvider import com.android.settingslib.spa.framework.common.createSettingsPage import com.android.settingslib.spa.framework.compose.navigator import com.android.settingslib.spa.widget.preference.Preference import com.android.settingslib.spa.widget.preference.PreferenceModel import com.android.settingslib.spa.widget.scaffold.RegularScaffold import com.android.settingslib.spa.widget.ui.Category private const val TITLE = "Category: Editor" object EditorMainPageProvider : SettingsPageProvider { override val name = "EditorMain" private val owner = createSettingsPage() override fun buildEntry(arguments: Bundle?): List<SettingsEntry> { return listOf( SettingsOutlinedTextFieldPageProvider.buildInjectEntry().setLink(fromPage = owner) .build(), SettingsDropdownBoxPageProvider.buildInjectEntry().setLink(fromPage = owner) .build(), SettingsDropdownCheckBoxProvider.buildInjectEntry().setLink(fromPage = owner) .build(), SettingsTextFieldPasswordPageProvider.buildInjectEntry().setLink(fromPage = owner) .build(), ) } @Composable fun Entry() { Preference(object : PreferenceModel { Preference( object : PreferenceModel { override val title = TITLE override val onClick = navigator(name) }) } ) } override fun getTitle(arguments: Bundle?): String { return TITLE @Composable override fun Page(arguments: Bundle?) { RegularScaffold(TITLE) { Category { SettingsOutlinedTextFieldPageProvider.Entry() SettingsDropdownBoxPageProvider.Entry() SettingsDropdownCheckBoxProvider.Entry() SettingsTextFieldPasswordPageProvider.Entry() } } } } packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/editor/SettingsDropdownBoxPageProvider.kt +17 −19 Original line number Diff line number Diff line Loading @@ -23,9 +23,7 @@ import androidx.compose.runtime.mutableIntStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.tooling.preview.Preview import com.android.settingslib.spa.framework.common.SettingsEntryBuilder import com.android.settingslib.spa.framework.common.SettingsPageProvider import com.android.settingslib.spa.framework.common.createSettingsPage import com.android.settingslib.spa.framework.compose.navigator import com.android.settingslib.spa.framework.theme.SettingsTheme import com.android.settingslib.spa.widget.editor.SettingsDropdownBox Loading @@ -38,10 +36,6 @@ private const val TITLE = "Sample SettingsDropdownBox" object SettingsDropdownBoxPageProvider : SettingsPageProvider { override val name = "SettingsDropdownBox" override fun getTitle(arguments: Bundle?): String { return TITLE } @Composable override fun Page(arguments: Bundle?) { RegularScaffold(title = TITLE) { Loading @@ -58,7 +52,9 @@ object SettingsDropdownBoxPageProvider : SettingsPageProvider { label = "SettingsDropdownBox", options = listOf("item1", "item2", "item3"), selectedOptionIndex = selectedItem, ) { selectedItem = it } ) { selectedItem = it } } @Composable Loading @@ -69,7 +65,9 @@ object SettingsDropdownBoxPageProvider : SettingsPageProvider { options = listOf("item1", "item2", "item3"), enabled = false, selectedOptionIndex = selectedItem, ) { selectedItem = it } ) { selectedItem = it } } @Composable Loading @@ -79,24 +77,24 @@ object SettingsDropdownBoxPageProvider : SettingsPageProvider { label = "Empty", options = emptyList(), selectedOptionIndex = selectedItem, ) { selectedItem = it } ) { selectedItem = it } } fun buildInjectEntry(): SettingsEntryBuilder { return SettingsEntryBuilder.createInject(owner = createSettingsPage()) .setUiLayoutFn { Preference(object : PreferenceModel { @Composable fun Entry() { Preference( object : PreferenceModel { override val title = TITLE override val onClick = navigator(name) }) } ) } } @Preview(showBackground = true) @Composable private fun SettingsDropdownBoxPagePreview() { SettingsTheme { SettingsDropdownBoxPageProvider.Page(null) } SettingsTheme { SettingsDropdownBoxPageProvider.Page(null) } } packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/editor/SettingsDropdownCheckBoxProvider.kt +63 −65 Original line number Diff line number Diff line Loading @@ -21,9 +21,7 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.ui.tooling.preview.Preview import com.android.settingslib.spa.framework.common.SettingsEntryBuilder import com.android.settingslib.spa.framework.common.SettingsPageProvider import com.android.settingslib.spa.framework.common.createSettingsPage import com.android.settingslib.spa.framework.compose.navigator import com.android.settingslib.spa.framework.theme.SettingsTheme import com.android.settingslib.spa.widget.editor.SettingsDropdownCheckBox Loading @@ -37,16 +35,13 @@ private const val TITLE = "Sample SettingsDropdownCheckBox" object SettingsDropdownCheckBoxProvider : SettingsPageProvider { override val name = "SettingsDropdownCheckBox" override fun getTitle(arguments: Bundle?): String { return TITLE } @Composable override fun Page(arguments: Bundle?) { RegularScaffold(title = TITLE) { SettingsDropdownCheckBox( label = "SettingsDropdownCheckBox", options = remember { options = remember { listOf( SettingsDropdownCheckOption("Item 1"), SettingsDropdownCheckOption("Item 2"), Loading @@ -54,13 +49,11 @@ object SettingsDropdownCheckBoxProvider : SettingsPageProvider { ) }, ) SettingsDropdownCheckBox( label = "Empty list", options = emptyList(), ) SettingsDropdownCheckBox(label = "Empty list", options = emptyList()) SettingsDropdownCheckBox( label = "Disabled", options = remember { options = remember { listOf( SettingsDropdownCheckOption("Item 1", selected = mutableStateOf(true)), SettingsDropdownCheckOption("Item 2"), Loading @@ -71,7 +64,8 @@ object SettingsDropdownCheckBoxProvider : SettingsPageProvider { ) SettingsDropdownCheckBox( label = "With disabled item", options = remember { options = remember { listOf( SettingsDropdownCheckOption("Enabled item 1"), SettingsDropdownCheckOption("Enabled item 2"), Loading @@ -86,7 +80,8 @@ object SettingsDropdownCheckBoxProvider : SettingsPageProvider { ) SettingsDropdownCheckBox( label = "With select all", options = remember { options = remember { listOf( SettingsDropdownCheckOption("All", isSelectAll = true), SettingsDropdownCheckOption("Item 1"), Loading @@ -100,7 +95,11 @@ object SettingsDropdownCheckBoxProvider : SettingsPageProvider { options = remember { listOf( SettingsDropdownCheckOption("All", isSelectAll = true, changeable = false), SettingsDropdownCheckOption( "All", isSelectAll = true, changeable = false, ), SettingsDropdownCheckOption("Enabled item 1"), SettingsDropdownCheckOption("Enabled item 2"), SettingsDropdownCheckOption( Loading @@ -115,20 +114,19 @@ object SettingsDropdownCheckBoxProvider : SettingsPageProvider { } } fun buildInjectEntry(): SettingsEntryBuilder { return SettingsEntryBuilder.createInject(owner = createSettingsPage()).setUiLayoutFn { Preference(object : PreferenceModel { @Composable fun Entry() { Preference( object : PreferenceModel { override val title = TITLE override val onClick = navigator(name) }) } ) } } @Preview(showBackground = true) @Composable private fun SettingsDropdownCheckBoxPagePreview() { SettingsTheme { SettingsDropdownCheckBoxProvider.Page(null) } SettingsTheme { SettingsDropdownCheckBoxProvider.Page(null) } } packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/editor/SettingsOutlinedTextFieldPageProvider.kt +11 −18 Original line number Diff line number Diff line Loading @@ -23,9 +23,7 @@ import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.tooling.preview.Preview import com.android.settingslib.spa.framework.common.SettingsEntryBuilder import com.android.settingslib.spa.framework.common.SettingsPageProvider import com.android.settingslib.spa.framework.common.createSettingsPage import com.android.settingslib.spa.framework.compose.navigator import com.android.settingslib.spa.framework.theme.SettingsTheme import com.android.settingslib.spa.widget.editor.SettingsOutlinedTextField Loading @@ -38,10 +36,6 @@ private const val TITLE = "Sample SettingsOutlinedTextField" object SettingsOutlinedTextFieldPageProvider : SettingsPageProvider { override val name = "SettingsOutlinedTextField" override fun getTitle(arguments: Bundle?): String { return TITLE } @Composable override fun Page(arguments: Bundle?) { var value by remember { mutableStateOf("Enabled Value") } Loading @@ -50,25 +44,24 @@ object SettingsOutlinedTextFieldPageProvider : SettingsPageProvider { value = value, label = "OutlinedTextField Enabled", enabled = true, onTextChange = {value = it}) onTextChange = { value = it }, ) } } fun buildInjectEntry(): SettingsEntryBuilder { return SettingsEntryBuilder.createInject(owner = createSettingsPage()) .setUiLayoutFn { Preference(object : PreferenceModel { @Composable fun Entry() { Preference( object : PreferenceModel { override val title = TITLE override val onClick = navigator(name) }) } ) } } @Preview(showBackground = true) @Composable private fun SettingsOutlinedTextFieldPagePreview() { SettingsTheme { SettingsOutlinedTextFieldPageProvider.Page(null) } SettingsTheme { SettingsOutlinedTextFieldPageProvider.Page(null) } } packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/editor/SettingsTextFieldPasswordPageProvider.kt +10 −21 Original line number Diff line number Diff line Loading @@ -23,9 +23,7 @@ import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.tooling.preview.Preview import com.android.settingslib.spa.framework.common.SettingsEntryBuilder import com.android.settingslib.spa.framework.common.SettingsPageProvider import com.android.settingslib.spa.framework.common.createSettingsPage import com.android.settingslib.spa.framework.compose.navigator import com.android.settingslib.spa.framework.theme.SettingsTheme import com.android.settingslib.spa.widget.editor.SettingsTextFieldPassword Loading @@ -38,36 +36,27 @@ private const val TITLE = "Sample SettingsTextFieldPassword" object SettingsTextFieldPasswordPageProvider : SettingsPageProvider { override val name = "SettingsTextFieldPassword" override fun getTitle(arguments: Bundle?): String { return TITLE } @Composable override fun Page(arguments: Bundle?) { var value by remember { mutableStateOf("value") } RegularScaffold(title = TITLE) { SettingsTextFieldPassword( value = value, label = "label", onTextChange = { value = it }) SettingsTextFieldPassword(value = value, label = "label", onTextChange = { value = it }) } } fun buildInjectEntry(): SettingsEntryBuilder { return SettingsEntryBuilder.createInject(owner = createSettingsPage()) .setUiLayoutFn { Preference(object : PreferenceModel { @Composable fun Entry() { Preference( object : PreferenceModel { override val title = TITLE override val onClick = navigator(name) }) } ) } } @Preview(showBackground = true) @Composable private fun SettingsTextFieldPasswordPagePreview() { SettingsTheme { SettingsTextFieldPasswordPageProvider.Page(null) } SettingsTheme { SettingsTextFieldPasswordPageProvider.Page(null) } } Loading
packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/editor/EditorMainPageProvider.kt +18 −22 Original line number Diff line number Diff line Loading @@ -18,41 +18,37 @@ package com.android.settingslib.spa.gallery.editor import android.os.Bundle import androidx.compose.runtime.Composable import com.android.settingslib.spa.framework.common.SettingsEntry import com.android.settingslib.spa.framework.common.SettingsPageProvider import com.android.settingslib.spa.framework.common.createSettingsPage import com.android.settingslib.spa.framework.compose.navigator import com.android.settingslib.spa.widget.preference.Preference import com.android.settingslib.spa.widget.preference.PreferenceModel import com.android.settingslib.spa.widget.scaffold.RegularScaffold import com.android.settingslib.spa.widget.ui.Category private const val TITLE = "Category: Editor" object EditorMainPageProvider : SettingsPageProvider { override val name = "EditorMain" private val owner = createSettingsPage() override fun buildEntry(arguments: Bundle?): List<SettingsEntry> { return listOf( SettingsOutlinedTextFieldPageProvider.buildInjectEntry().setLink(fromPage = owner) .build(), SettingsDropdownBoxPageProvider.buildInjectEntry().setLink(fromPage = owner) .build(), SettingsDropdownCheckBoxProvider.buildInjectEntry().setLink(fromPage = owner) .build(), SettingsTextFieldPasswordPageProvider.buildInjectEntry().setLink(fromPage = owner) .build(), ) } @Composable fun Entry() { Preference(object : PreferenceModel { Preference( object : PreferenceModel { override val title = TITLE override val onClick = navigator(name) }) } ) } override fun getTitle(arguments: Bundle?): String { return TITLE @Composable override fun Page(arguments: Bundle?) { RegularScaffold(TITLE) { Category { SettingsOutlinedTextFieldPageProvider.Entry() SettingsDropdownBoxPageProvider.Entry() SettingsDropdownCheckBoxProvider.Entry() SettingsTextFieldPasswordPageProvider.Entry() } } } }
packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/editor/SettingsDropdownBoxPageProvider.kt +17 −19 Original line number Diff line number Diff line Loading @@ -23,9 +23,7 @@ import androidx.compose.runtime.mutableIntStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.tooling.preview.Preview import com.android.settingslib.spa.framework.common.SettingsEntryBuilder import com.android.settingslib.spa.framework.common.SettingsPageProvider import com.android.settingslib.spa.framework.common.createSettingsPage import com.android.settingslib.spa.framework.compose.navigator import com.android.settingslib.spa.framework.theme.SettingsTheme import com.android.settingslib.spa.widget.editor.SettingsDropdownBox Loading @@ -38,10 +36,6 @@ private const val TITLE = "Sample SettingsDropdownBox" object SettingsDropdownBoxPageProvider : SettingsPageProvider { override val name = "SettingsDropdownBox" override fun getTitle(arguments: Bundle?): String { return TITLE } @Composable override fun Page(arguments: Bundle?) { RegularScaffold(title = TITLE) { Loading @@ -58,7 +52,9 @@ object SettingsDropdownBoxPageProvider : SettingsPageProvider { label = "SettingsDropdownBox", options = listOf("item1", "item2", "item3"), selectedOptionIndex = selectedItem, ) { selectedItem = it } ) { selectedItem = it } } @Composable Loading @@ -69,7 +65,9 @@ object SettingsDropdownBoxPageProvider : SettingsPageProvider { options = listOf("item1", "item2", "item3"), enabled = false, selectedOptionIndex = selectedItem, ) { selectedItem = it } ) { selectedItem = it } } @Composable Loading @@ -79,24 +77,24 @@ object SettingsDropdownBoxPageProvider : SettingsPageProvider { label = "Empty", options = emptyList(), selectedOptionIndex = selectedItem, ) { selectedItem = it } ) { selectedItem = it } } fun buildInjectEntry(): SettingsEntryBuilder { return SettingsEntryBuilder.createInject(owner = createSettingsPage()) .setUiLayoutFn { Preference(object : PreferenceModel { @Composable fun Entry() { Preference( object : PreferenceModel { override val title = TITLE override val onClick = navigator(name) }) } ) } } @Preview(showBackground = true) @Composable private fun SettingsDropdownBoxPagePreview() { SettingsTheme { SettingsDropdownBoxPageProvider.Page(null) } SettingsTheme { SettingsDropdownBoxPageProvider.Page(null) } }
packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/editor/SettingsDropdownCheckBoxProvider.kt +63 −65 Original line number Diff line number Diff line Loading @@ -21,9 +21,7 @@ import androidx.compose.runtime.Composable import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.ui.tooling.preview.Preview import com.android.settingslib.spa.framework.common.SettingsEntryBuilder import com.android.settingslib.spa.framework.common.SettingsPageProvider import com.android.settingslib.spa.framework.common.createSettingsPage import com.android.settingslib.spa.framework.compose.navigator import com.android.settingslib.spa.framework.theme.SettingsTheme import com.android.settingslib.spa.widget.editor.SettingsDropdownCheckBox Loading @@ -37,16 +35,13 @@ private const val TITLE = "Sample SettingsDropdownCheckBox" object SettingsDropdownCheckBoxProvider : SettingsPageProvider { override val name = "SettingsDropdownCheckBox" override fun getTitle(arguments: Bundle?): String { return TITLE } @Composable override fun Page(arguments: Bundle?) { RegularScaffold(title = TITLE) { SettingsDropdownCheckBox( label = "SettingsDropdownCheckBox", options = remember { options = remember { listOf( SettingsDropdownCheckOption("Item 1"), SettingsDropdownCheckOption("Item 2"), Loading @@ -54,13 +49,11 @@ object SettingsDropdownCheckBoxProvider : SettingsPageProvider { ) }, ) SettingsDropdownCheckBox( label = "Empty list", options = emptyList(), ) SettingsDropdownCheckBox(label = "Empty list", options = emptyList()) SettingsDropdownCheckBox( label = "Disabled", options = remember { options = remember { listOf( SettingsDropdownCheckOption("Item 1", selected = mutableStateOf(true)), SettingsDropdownCheckOption("Item 2"), Loading @@ -71,7 +64,8 @@ object SettingsDropdownCheckBoxProvider : SettingsPageProvider { ) SettingsDropdownCheckBox( label = "With disabled item", options = remember { options = remember { listOf( SettingsDropdownCheckOption("Enabled item 1"), SettingsDropdownCheckOption("Enabled item 2"), Loading @@ -86,7 +80,8 @@ object SettingsDropdownCheckBoxProvider : SettingsPageProvider { ) SettingsDropdownCheckBox( label = "With select all", options = remember { options = remember { listOf( SettingsDropdownCheckOption("All", isSelectAll = true), SettingsDropdownCheckOption("Item 1"), Loading @@ -100,7 +95,11 @@ object SettingsDropdownCheckBoxProvider : SettingsPageProvider { options = remember { listOf( SettingsDropdownCheckOption("All", isSelectAll = true, changeable = false), SettingsDropdownCheckOption( "All", isSelectAll = true, changeable = false, ), SettingsDropdownCheckOption("Enabled item 1"), SettingsDropdownCheckOption("Enabled item 2"), SettingsDropdownCheckOption( Loading @@ -115,20 +114,19 @@ object SettingsDropdownCheckBoxProvider : SettingsPageProvider { } } fun buildInjectEntry(): SettingsEntryBuilder { return SettingsEntryBuilder.createInject(owner = createSettingsPage()).setUiLayoutFn { Preference(object : PreferenceModel { @Composable fun Entry() { Preference( object : PreferenceModel { override val title = TITLE override val onClick = navigator(name) }) } ) } } @Preview(showBackground = true) @Composable private fun SettingsDropdownCheckBoxPagePreview() { SettingsTheme { SettingsDropdownCheckBoxProvider.Page(null) } SettingsTheme { SettingsDropdownCheckBoxProvider.Page(null) } }
packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/editor/SettingsOutlinedTextFieldPageProvider.kt +11 −18 Original line number Diff line number Diff line Loading @@ -23,9 +23,7 @@ import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.tooling.preview.Preview import com.android.settingslib.spa.framework.common.SettingsEntryBuilder import com.android.settingslib.spa.framework.common.SettingsPageProvider import com.android.settingslib.spa.framework.common.createSettingsPage import com.android.settingslib.spa.framework.compose.navigator import com.android.settingslib.spa.framework.theme.SettingsTheme import com.android.settingslib.spa.widget.editor.SettingsOutlinedTextField Loading @@ -38,10 +36,6 @@ private const val TITLE = "Sample SettingsOutlinedTextField" object SettingsOutlinedTextFieldPageProvider : SettingsPageProvider { override val name = "SettingsOutlinedTextField" override fun getTitle(arguments: Bundle?): String { return TITLE } @Composable override fun Page(arguments: Bundle?) { var value by remember { mutableStateOf("Enabled Value") } Loading @@ -50,25 +44,24 @@ object SettingsOutlinedTextFieldPageProvider : SettingsPageProvider { value = value, label = "OutlinedTextField Enabled", enabled = true, onTextChange = {value = it}) onTextChange = { value = it }, ) } } fun buildInjectEntry(): SettingsEntryBuilder { return SettingsEntryBuilder.createInject(owner = createSettingsPage()) .setUiLayoutFn { Preference(object : PreferenceModel { @Composable fun Entry() { Preference( object : PreferenceModel { override val title = TITLE override val onClick = navigator(name) }) } ) } } @Preview(showBackground = true) @Composable private fun SettingsOutlinedTextFieldPagePreview() { SettingsTheme { SettingsOutlinedTextFieldPageProvider.Page(null) } SettingsTheme { SettingsOutlinedTextFieldPageProvider.Page(null) } }
packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/editor/SettingsTextFieldPasswordPageProvider.kt +10 −21 Original line number Diff line number Diff line Loading @@ -23,9 +23,7 @@ import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.tooling.preview.Preview import com.android.settingslib.spa.framework.common.SettingsEntryBuilder import com.android.settingslib.spa.framework.common.SettingsPageProvider import com.android.settingslib.spa.framework.common.createSettingsPage import com.android.settingslib.spa.framework.compose.navigator import com.android.settingslib.spa.framework.theme.SettingsTheme import com.android.settingslib.spa.widget.editor.SettingsTextFieldPassword Loading @@ -38,36 +36,27 @@ private const val TITLE = "Sample SettingsTextFieldPassword" object SettingsTextFieldPasswordPageProvider : SettingsPageProvider { override val name = "SettingsTextFieldPassword" override fun getTitle(arguments: Bundle?): String { return TITLE } @Composable override fun Page(arguments: Bundle?) { var value by remember { mutableStateOf("value") } RegularScaffold(title = TITLE) { SettingsTextFieldPassword( value = value, label = "label", onTextChange = { value = it }) SettingsTextFieldPassword(value = value, label = "label", onTextChange = { value = it }) } } fun buildInjectEntry(): SettingsEntryBuilder { return SettingsEntryBuilder.createInject(owner = createSettingsPage()) .setUiLayoutFn { Preference(object : PreferenceModel { @Composable fun Entry() { Preference( object : PreferenceModel { override val title = TITLE override val onClick = navigator(name) }) } ) } } @Preview(showBackground = true) @Composable private fun SettingsTextFieldPasswordPagePreview() { SettingsTheme { SettingsTextFieldPasswordPageProvider.Page(null) } SettingsTheme { SettingsTextFieldPasswordPageProvider.Page(null) } }