Merge "Always use Spp to generate SettingsPage in Gallery"
This commit is contained in:
@@ -24,8 +24,8 @@ import androidx.compose.material.icons.outlined.WarningAmber
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.tooling.preview.Preview
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntryBuilder
|
||||
import com.android.settingslib.spa.framework.common.SettingsPage
|
||||
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.button.ActionButton
|
||||
@@ -39,13 +39,24 @@ private const val TITLE = "Sample ActionButton"
|
||||
object ActionButtonPageProvider : SettingsPageProvider {
|
||||
override val name = "ActionButton"
|
||||
|
||||
override fun getTitle(arguments: Bundle?): String {
|
||||
return TITLE
|
||||
}
|
||||
|
||||
@Composable
|
||||
override fun Page(arguments: Bundle?) {
|
||||
ActionButtonPage()
|
||||
RegularScaffold(title = TITLE) {
|
||||
val actionButtons = listOf(
|
||||
ActionButton(text = "Open", imageVector = Icons.Outlined.Launch) {},
|
||||
ActionButton(text = "Uninstall", imageVector = Icons.Outlined.Delete) {},
|
||||
ActionButton(text = "Force stop", imageVector = Icons.Outlined.WarningAmber) {},
|
||||
)
|
||||
ActionButtons(actionButtons)
|
||||
}
|
||||
}
|
||||
|
||||
fun buildInjectEntry(): SettingsEntryBuilder {
|
||||
return SettingsEntryBuilder.createInject(owner = SettingsPage.create(name))
|
||||
return SettingsEntryBuilder.createInject(owner = createSettingsPage())
|
||||
.setUiLayoutFn {
|
||||
Preference(object : PreferenceModel {
|
||||
override val title = TITLE
|
||||
@@ -55,22 +66,10 @@ object ActionButtonPageProvider : SettingsPageProvider {
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun ActionButtonPage() {
|
||||
RegularScaffold(title = TITLE) {
|
||||
val actionButtons = listOf(
|
||||
ActionButton(text = "Open", imageVector = Icons.Outlined.Launch) {},
|
||||
ActionButton(text = "Uninstall", imageVector = Icons.Outlined.Delete) {},
|
||||
ActionButton(text = "Force stop", imageVector = Icons.Outlined.WarningAmber) {},
|
||||
)
|
||||
ActionButtons(actionButtons)
|
||||
}
|
||||
}
|
||||
|
||||
@Preview(showBackground = true)
|
||||
@Composable
|
||||
private fun ActionButtonPagePreview() {
|
||||
SettingsTheme {
|
||||
ActionButtonPage()
|
||||
ActionButtonPageProvider.Page(null)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -21,8 +21,8 @@ import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.tooling.preview.Preview
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntry
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntryBuilder
|
||||
import com.android.settingslib.spa.framework.common.SettingsPage
|
||||
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.chart.BarChart
|
||||
@@ -36,7 +36,6 @@ import com.android.settingslib.spa.widget.chart.PieChartData
|
||||
import com.android.settingslib.spa.widget.chart.PieChartModel
|
||||
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.github.mikephil.charting.formatter.IAxisValueFormatter
|
||||
import java.text.NumberFormat
|
||||
|
||||
@@ -47,9 +46,13 @@ private const val TITLE = "Sample Chart"
|
||||
|
||||
object ChartPageProvider : SettingsPageProvider {
|
||||
override val name = "Chart"
|
||||
val owner = createSettingsPage()
|
||||
|
||||
override fun getTitle(arguments: Bundle?): String {
|
||||
return TITLE
|
||||
}
|
||||
|
||||
override fun buildEntry(arguments: Bundle?): List<SettingsEntry> {
|
||||
val owner = SettingsPage.create(name)
|
||||
val entryList = mutableListOf<SettingsEntry>()
|
||||
entryList.add(
|
||||
SettingsEntryBuilder.create("Line Chart", owner)
|
||||
@@ -133,7 +136,7 @@ object ChartPageProvider : SettingsPageProvider {
|
||||
}
|
||||
|
||||
fun buildInjectEntry(): SettingsEntryBuilder {
|
||||
return SettingsEntryBuilder.createInject(owner = SettingsPage.create(name))
|
||||
return SettingsEntryBuilder.createInject(owner)
|
||||
.setUiLayoutFn {
|
||||
Preference(object : PreferenceModel {
|
||||
override val title = TITLE
|
||||
@@ -141,15 +144,6 @@ object ChartPageProvider : SettingsPageProvider {
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@Composable
|
||||
override fun Page(arguments: Bundle?) {
|
||||
RegularScaffold(title = TITLE) {
|
||||
for (entry in buildEntry(arguments)) {
|
||||
entry.UiLayout(arguments)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Preview(showBackground = true)
|
||||
|
||||
@@ -23,8 +23,8 @@ import androidx.compose.ui.tooling.preview.Preview
|
||||
import com.android.settingslib.spa.framework.common.EntrySearchData
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntry
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntryBuilder
|
||||
import com.android.settingslib.spa.framework.common.SettingsPage
|
||||
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.compose.stateOf
|
||||
import com.android.settingslib.spa.framework.theme.SettingsTheme
|
||||
@@ -37,9 +37,9 @@ private const val TITLE = "Sample Footer"
|
||||
|
||||
object FooterPageProvider : SettingsPageProvider {
|
||||
override val name = "Footer"
|
||||
val owner = createSettingsPage()
|
||||
|
||||
override fun buildEntry(arguments: Bundle?): List<SettingsEntry> {
|
||||
val owner = SettingsPage.create(name)
|
||||
val entryList = mutableListOf<SettingsEntry>()
|
||||
entryList.add(
|
||||
SettingsEntryBuilder.create( "Some Preference", owner)
|
||||
@@ -58,7 +58,7 @@ object FooterPageProvider : SettingsPageProvider {
|
||||
}
|
||||
|
||||
fun buildInjectEntry(): SettingsEntryBuilder {
|
||||
return SettingsEntryBuilder.createInject(owner = SettingsPage.create(name))
|
||||
return SettingsEntryBuilder.createInject(owner)
|
||||
.setUiLayoutFn {
|
||||
Preference(object : PreferenceModel {
|
||||
override val title = TITLE
|
||||
|
||||
@@ -21,8 +21,8 @@ import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.tooling.preview.Preview
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntry
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntryBuilder
|
||||
import com.android.settingslib.spa.framework.common.SettingsPage
|
||||
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.gallery.R
|
||||
@@ -36,9 +36,9 @@ private const val TITLE = "Sample Illustration"
|
||||
|
||||
object IllustrationPageProvider : SettingsPageProvider {
|
||||
override val name = "Illustration"
|
||||
val owner = createSettingsPage()
|
||||
|
||||
override fun buildEntry(arguments: Bundle?): List<SettingsEntry> {
|
||||
val owner = SettingsPage.create(name)
|
||||
val entryList = mutableListOf<SettingsEntry>()
|
||||
entryList.add(
|
||||
SettingsEntryBuilder.create( "Lottie Illustration", owner)
|
||||
@@ -71,7 +71,7 @@ object IllustrationPageProvider : SettingsPageProvider {
|
||||
}
|
||||
|
||||
fun buildInjectEntry(): SettingsEntryBuilder {
|
||||
return SettingsEntryBuilder.createInject(owner = SettingsPage.create(name))
|
||||
return SettingsEntryBuilder.createInject(owner)
|
||||
.setUiLayoutFn {
|
||||
Preference(object : PreferenceModel {
|
||||
override val title = TITLE
|
||||
|
||||
@@ -29,8 +29,8 @@ import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.tooling.preview.Preview
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntryBuilder
|
||||
import com.android.settingslib.spa.framework.common.SettingsPage
|
||||
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.preference.Preference
|
||||
@@ -45,7 +45,7 @@ object LoadingBarPageProvider : SettingsPageProvider {
|
||||
override val name = "LoadingBar"
|
||||
|
||||
fun buildInjectEntry(): SettingsEntryBuilder {
|
||||
return SettingsEntryBuilder.createInject(owner = SettingsPage.create(name))
|
||||
return SettingsEntryBuilder.createInject(owner = createSettingsPage())
|
||||
.setUiLayoutFn {
|
||||
Preference(object : PreferenceModel {
|
||||
override val title = TITLE
|
||||
|
||||
@@ -28,8 +28,8 @@ 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.SettingsPage
|
||||
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.preference.Preference
|
||||
@@ -47,7 +47,7 @@ object ProgressBarPageProvider : SettingsPageProvider {
|
||||
override val name = "ProgressBar"
|
||||
|
||||
fun buildInjectEntry(): SettingsEntryBuilder {
|
||||
return SettingsEntryBuilder.createInject(owner = SettingsPage.create(name))
|
||||
return SettingsEntryBuilder.createInject(owner = createSettingsPage())
|
||||
.setUiLayoutFn {
|
||||
Preference(object : PreferenceModel {
|
||||
override val title = TITLE
|
||||
|
||||
@@ -23,8 +23,8 @@ import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.tooling.preview.Preview
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntryBuilder
|
||||
import com.android.settingslib.spa.framework.common.SettingsPage
|
||||
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.preference.Preference
|
||||
@@ -39,7 +39,7 @@ object SettingsPagerPageProvider : SettingsPageProvider {
|
||||
override val name = "SettingsPager"
|
||||
|
||||
fun buildInjectEntry(): SettingsEntryBuilder {
|
||||
return SettingsEntryBuilder.createInject(owner = SettingsPage.create(name))
|
||||
return SettingsEntryBuilder.createInject(owner = createSettingsPage())
|
||||
.setUiLayoutFn {
|
||||
Preference(object : PreferenceModel {
|
||||
override val title = TITLE
|
||||
|
||||
@@ -29,8 +29,8 @@ import androidx.compose.runtime.setValue
|
||||
import androidx.compose.ui.tooling.preview.Preview
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntry
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntryBuilder
|
||||
import com.android.settingslib.spa.framework.common.SettingsPage
|
||||
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.preference.SliderPreference
|
||||
@@ -42,9 +42,9 @@ private const val TITLE = "Sample Slider"
|
||||
|
||||
object SliderPageProvider : SettingsPageProvider {
|
||||
override val name = "Slider"
|
||||
val owner = createSettingsPage()
|
||||
|
||||
override fun buildEntry(arguments: Bundle?): List<SettingsEntry> {
|
||||
val owner = SettingsPage.create(name)
|
||||
val entryList = mutableListOf<SettingsEntry>()
|
||||
entryList.add(
|
||||
SettingsEntryBuilder.create("Simple Slider", owner)
|
||||
@@ -104,7 +104,7 @@ object SliderPageProvider : SettingsPageProvider {
|
||||
}
|
||||
|
||||
fun buildInjectEntry(): SettingsEntryBuilder {
|
||||
return SettingsEntryBuilder.createInject(owner = SettingsPage.create(name))
|
||||
return SettingsEntryBuilder.createInject(owner)
|
||||
.setUiLayoutFn {
|
||||
Preference(object : PreferenceModel {
|
||||
override val title = TITLE
|
||||
|
||||
@@ -24,8 +24,8 @@ import androidx.compose.runtime.saveable.rememberSaveable
|
||||
import androidx.compose.ui.tooling.preview.Preview
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntry
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntryBuilder
|
||||
import com.android.settingslib.spa.framework.common.SettingsPage
|
||||
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.compose.stateOf
|
||||
import com.android.settingslib.spa.framework.theme.SettingsTheme
|
||||
@@ -38,9 +38,9 @@ private const val TITLE = "Sample MainSwitchPreference"
|
||||
|
||||
object MainSwitchPreferencePageProvider : SettingsPageProvider {
|
||||
override val name = "MainSwitchPreference"
|
||||
val owner = createSettingsPage()
|
||||
|
||||
override fun buildEntry(arguments: Bundle?): List<SettingsEntry> {
|
||||
val owner = SettingsPage.create(name)
|
||||
val entryList = mutableListOf<SettingsEntry>()
|
||||
entryList.add(
|
||||
SettingsEntryBuilder.create( "MainSwitchPreference", owner)
|
||||
@@ -59,7 +59,7 @@ object MainSwitchPreferencePageProvider : SettingsPageProvider {
|
||||
}
|
||||
|
||||
fun buildInjectEntry(): SettingsEntryBuilder {
|
||||
return SettingsEntryBuilder.createInject(owner = SettingsPage.create(name))
|
||||
return SettingsEntryBuilder.createInject(owner)
|
||||
.setUiLayoutFn {
|
||||
Preference(object : PreferenceModel {
|
||||
override val title = TITLE
|
||||
|
||||
@@ -27,8 +27,8 @@ import androidx.compose.runtime.saveable.rememberSaveable
|
||||
import androidx.compose.ui.tooling.preview.Preview
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntry
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntryBuilder
|
||||
import com.android.settingslib.spa.framework.common.SettingsPage
|
||||
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.compose.stateOf
|
||||
import com.android.settingslib.spa.framework.theme.SettingsTheme
|
||||
@@ -43,9 +43,9 @@ private const val TITLE = "Sample SwitchPreference"
|
||||
|
||||
object SwitchPreferencePageProvider : SettingsPageProvider {
|
||||
override val name = "SwitchPreference"
|
||||
val owner = createSettingsPage()
|
||||
|
||||
override fun buildEntry(arguments: Bundle?): List<SettingsEntry> {
|
||||
val owner = SettingsPage.create(name)
|
||||
val entryList = mutableListOf<SettingsEntry>()
|
||||
entryList.add(
|
||||
SettingsEntryBuilder.create( "SwitchPreference", owner)
|
||||
@@ -82,7 +82,7 @@ object SwitchPreferencePageProvider : SettingsPageProvider {
|
||||
}
|
||||
|
||||
fun buildInjectEntry(): SettingsEntryBuilder {
|
||||
return SettingsEntryBuilder.createInject(owner = SettingsPage.create(name))
|
||||
return SettingsEntryBuilder.createInject(owner)
|
||||
.setUiLayoutFn {
|
||||
Preference(object : PreferenceModel {
|
||||
override val title = TITLE
|
||||
|
||||
@@ -25,8 +25,8 @@ import androidx.compose.runtime.saveable.rememberSaveable
|
||||
import androidx.compose.ui.tooling.preview.Preview
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntry
|
||||
import com.android.settingslib.spa.framework.common.SettingsEntryBuilder
|
||||
import com.android.settingslib.spa.framework.common.SettingsPage
|
||||
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.compose.stateOf
|
||||
import com.android.settingslib.spa.framework.theme.SettingsTheme
|
||||
@@ -40,9 +40,9 @@ private const val TITLE = "Sample TwoTargetSwitchPreference"
|
||||
|
||||
object TwoTargetSwitchPreferencePageProvider : SettingsPageProvider {
|
||||
override val name = "TwoTargetSwitchPreference"
|
||||
val owner = createSettingsPage()
|
||||
|
||||
override fun buildEntry(arguments: Bundle?): List<SettingsEntry> {
|
||||
val owner = SettingsPage.create(name)
|
||||
val entryList = mutableListOf<SettingsEntry>()
|
||||
entryList.add(
|
||||
SettingsEntryBuilder.create( "TwoTargetSwitchPreference", owner)
|
||||
@@ -73,7 +73,7 @@ object TwoTargetSwitchPreferencePageProvider : SettingsPageProvider {
|
||||
}
|
||||
|
||||
fun buildInjectEntry(): SettingsEntryBuilder {
|
||||
return SettingsEntryBuilder.createInject(owner = SettingsPage.create(name))
|
||||
return SettingsEntryBuilder.createInject(owner)
|
||||
.setUiLayoutFn {
|
||||
Preference(object : PreferenceModel {
|
||||
override val title = TITLE
|
||||
|
||||
@@ -26,8 +26,8 @@ import androidx.compose.runtime.saveable.rememberSaveable
|
||||
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.SettingsPage
|
||||
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.preference.Preference
|
||||
@@ -42,7 +42,7 @@ object SpinnerPageProvider : SettingsPageProvider {
|
||||
override val name = "Spinner"
|
||||
|
||||
fun buildInjectEntry(): SettingsEntryBuilder {
|
||||
return SettingsEntryBuilder.createInject(owner = SettingsPage.create(name))
|
||||
return SettingsEntryBuilder.createInject(owner = createSettingsPage())
|
||||
.setUiLayoutFn {
|
||||
Preference(object : PreferenceModel {
|
||||
override val title = TITLE
|
||||
|
||||
Reference in New Issue
Block a user