diff options
3 files changed, 34 insertions, 91 deletions
diff --git a/packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/preference/ListPreferencePageProvider.kt b/packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/preference/ListPreferencePageProvider.kt index 11406b5a10b4..3bb526ef7996 100644 --- a/packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/preference/ListPreferencePageProvider.kt +++ b/packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/preference/ListPreferencePageProvider.kt @@ -23,9 +23,7 @@ import androidx.compose.runtime.remember import androidx.compose.runtime.saveable.rememberSaveable import androidx.compose.ui.tooling.preview.Preview import androidx.lifecycle.compose.collectAsStateWithLifecycle -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.preference.ListPreference @@ -33,6 +31,8 @@ import com.android.settingslib.spa.widget.preference.ListPreferenceModel import com.android.settingslib.spa.widget.preference.ListPreferenceOption 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 import kotlin.time.Duration.Companion.seconds import kotlinx.coroutines.delay import kotlinx.coroutines.flow.flow @@ -41,18 +41,16 @@ private const val TITLE = "Sample ListPreference" object ListPreferencePageProvider : SettingsPageProvider { override val name = "ListPreference" - private val owner = createSettingsPage() - override fun buildEntry(arguments: Bundle?) = listOf( - SettingsEntryBuilder.create("ListPreference", owner) - .setUiLayoutFn { + @Composable + override fun Page(arguments: Bundle?) { + RegularScaffold(TITLE) { + Category { SampleListPreference() - }.build(), - SettingsEntryBuilder.create("ListPreference not changeable", owner) - .setUiLayoutFn { SampleNotChangeableListPreference() - }.build(), - ) + } + } + } @Composable fun Entry() { @@ -61,8 +59,6 @@ object ListPreferencePageProvider : SettingsPageProvider { override val onClick = navigator(name) }) } - - override fun getTitle(arguments: Bundle?) = TITLE } @Composable diff --git a/packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/preference/SwitchPreferencePageProvider.kt b/packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/preference/SwitchPreferencePageProvider.kt index 80d0a660797f..9508d504a5d8 100644 --- a/packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/preference/SwitchPreferencePageProvider.kt +++ b/packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/preference/SwitchPreferencePageProvider.kt @@ -27,16 +27,15 @@ import androidx.compose.runtime.remember 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.SettingsEntry -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.preference.Preference import com.android.settingslib.spa.widget.preference.PreferenceModel import com.android.settingslib.spa.widget.preference.SwitchPreference import com.android.settingslib.spa.widget.preference.SwitchPreferenceModel +import com.android.settingslib.spa.widget.scaffold.RegularScaffold +import com.android.settingslib.spa.widget.ui.Category import com.android.settingslib.spa.widget.ui.SettingsIcon import kotlinx.coroutines.delay @@ -44,42 +43,18 @@ private const val TITLE = "Sample SwitchPreference" object SwitchPreferencePageProvider : SettingsPageProvider { override val name = "SwitchPreference" - private val owner = createSettingsPage() - override fun buildEntry(arguments: Bundle?): List<SettingsEntry> { - val entryList = mutableListOf<SettingsEntry>() - entryList.add( - SettingsEntryBuilder.create( "SwitchPreference", owner) - .setUiLayoutFn { - SampleSwitchPreference() - }.build() - ) - entryList.add( - SettingsEntryBuilder.create( "SwitchPreference with summary", owner) - .setUiLayoutFn { - SampleSwitchPreferenceWithSummary() - }.build() - ) - entryList.add( - SettingsEntryBuilder.create( "SwitchPreference with async summary", owner) - .setUiLayoutFn { - SampleSwitchPreferenceWithAsyncSummary() - }.build() - ) - entryList.add( - SettingsEntryBuilder.create( "SwitchPreference not changeable", owner) - .setUiLayoutFn { - SampleNotChangeableSwitchPreference() - }.build() - ) - entryList.add( - SettingsEntryBuilder.create( "SwitchPreference with icon", owner) - .setUiLayoutFn { - SampleSwitchPreferenceWithIcon() - }.build() - ) - - return entryList + @Composable + override fun Page(arguments: Bundle?) { + RegularScaffold(TITLE) { + Category { + SampleSwitchPreference() + SampleSwitchPreferenceWithSummary() + SampleSwitchPreferenceWithAsyncSummary() + SampleNotChangeableSwitchPreference() + SampleSwitchPreferenceWithIcon() + } + } } @Composable @@ -89,10 +64,6 @@ object SwitchPreferencePageProvider : SettingsPageProvider { override val onClick = navigator(name) }) } - - override fun getTitle(arguments: Bundle?): String { - return TITLE - } } @Composable diff --git a/packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/preference/TwoTargetSwitchPreferencePageProvider.kt b/packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/preference/TwoTargetSwitchPreferencePageProvider.kt index 01e8d0434942..1a89bb2dc4f4 100644 --- a/packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/preference/TwoTargetSwitchPreferencePageProvider.kt +++ b/packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/preference/TwoTargetSwitchPreferencePageProvider.kt @@ -25,52 +25,32 @@ import androidx.compose.runtime.remember 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.SettingsEntry -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.preference.Preference import com.android.settingslib.spa.widget.preference.PreferenceModel import com.android.settingslib.spa.widget.preference.SwitchPreferenceModel import com.android.settingslib.spa.widget.preference.TwoTargetSwitchPreference +import com.android.settingslib.spa.widget.scaffold.RegularScaffold +import com.android.settingslib.spa.widget.ui.Category import kotlinx.coroutines.delay private const val TITLE = "Sample TwoTargetSwitchPreference" object TwoTargetSwitchPreferencePageProvider : SettingsPageProvider { override val name = "TwoTargetSwitchPreference" - private val owner = createSettingsPage() - override fun buildEntry(arguments: Bundle?): List<SettingsEntry> { - val entryList = mutableListOf<SettingsEntry>() - entryList.add( - SettingsEntryBuilder.create( "TwoTargetSwitchPreference", owner) - .setUiLayoutFn { - SampleTwoTargetSwitchPreference() - }.build() - ) - entryList.add( - SettingsEntryBuilder.create( "TwoTargetSwitchPreference with summary", owner) - .setUiLayoutFn { - SampleTwoTargetSwitchPreferenceWithSummary() - }.build() - ) - entryList.add( - SettingsEntryBuilder.create( "TwoTargetSwitchPreference with async summary", owner) - .setUiLayoutFn { - SampleTwoTargetSwitchPreferenceWithAsyncSummary() - }.build() - ) - entryList.add( - SettingsEntryBuilder.create( "TwoTargetSwitchPreference not changeable", owner) - .setUiLayoutFn { - SampleNotChangeableTwoTargetSwitchPreference() - }.build() - ) - - return entryList + @Composable + override fun Page(arguments: Bundle?) { + RegularScaffold(TITLE) { + Category { + SampleTwoTargetSwitchPreference() + SampleTwoTargetSwitchPreferenceWithSummary() + SampleTwoTargetSwitchPreferenceWithAsyncSummary() + SampleNotChangeableTwoTargetSwitchPreference() + } + } } @Composable @@ -80,10 +60,6 @@ object TwoTargetSwitchPreferencePageProvider : SettingsPageProvider { override val onClick = navigator(name) }) } - - override fun getTitle(arguments: Bundle?): String { - return TITLE - } } @Composable |