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

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

Merge "Migrate PreferenceMainPageProvider" into main

parents 4cfb6609 0814725f
Loading
Loading
Loading
Loading
+6 −9
Original line number Diff line number Diff line
@@ -50,15 +50,12 @@ object IntroPreferencePageProvider : SettingsPageProvider {
        return entryList
    }

    fun buildInjectEntry(): SettingsEntryBuilder {
        return SettingsEntryBuilder.createInject(owner).setUiLayoutFn {
            Preference(
                object : PreferenceModel {
    @Composable
    fun Entry() {
        Preference(object : PreferenceModel {
            override val title = TITLE
            override val onClick = navigator(name)
                }
            )
        }
        })
    }

    override fun getTitle(arguments: Bundle?): String {
+6 −8
Original line number Diff line number Diff line
@@ -54,15 +54,13 @@ object ListPreferencePageProvider : SettingsPageProvider {
            }.build(),
    )

    fun buildInjectEntry(): SettingsEntryBuilder {
        return SettingsEntryBuilder.createInject(owner)
            .setUiLayoutFn {
    @Composable
    fun Entry() {
        Preference(object : PreferenceModel {
            override val title = TITLE
            override val onClick = navigator(name)
        })
    }
    }

    override fun getTitle(arguments: Bundle?) = TITLE
}
+6 −8
Original line number Diff line number Diff line
@@ -59,15 +59,13 @@ object MainSwitchPreferencePageProvider : SettingsPageProvider {
        return entryList
    }

    fun buildInjectEntry(): SettingsEntryBuilder {
        return SettingsEntryBuilder.createInject(owner)
            .setUiLayoutFn {
    @Composable
    fun Entry() {
        Preference(object : PreferenceModel {
            override val title = TITLE
            override val onClick = navigator(name)
        })
    }
    }

    override fun getTitle(arguments: Bundle?): String {
        return TITLE
+20 −19
Original line number Diff line number Diff line
@@ -18,31 +18,36 @@ package com.android.settingslib.spa.gallery.preference

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: Preference"

object PreferenceMainPageProvider : SettingsPageProvider {
    override val name = "PreferenceMain"
    private val owner = createSettingsPage()

    override fun buildEntry(arguments: Bundle?): List<SettingsEntry> {
        return listOf(
            PreferencePageProvider.buildInjectEntry().setLink(fromPage = owner).build(),
            SwitchPreferencePageProvider.buildInjectEntry().setLink(fromPage = owner).build(),
            MainSwitchPreferencePageProvider.buildInjectEntry().setLink(fromPage = owner).build(),
            ListPreferencePageProvider.buildInjectEntry().setLink(fromPage = owner).build(),
            TwoTargetSwitchPreferencePageProvider.buildInjectEntry()
                .setLink(fromPage = owner).build(),
            ZeroStatePreferencePageProvider.buildInjectEntry().setLink(fromPage = owner).build(),
            IntroPreferencePageProvider.buildInjectEntry().setLink(fromPage = owner).build(),
            TopIntroPreferencePageProvider.buildInjectEntry().setLink(fromPage = owner).build(),
        )
    @Composable
    override fun Page(arguments: Bundle?) {
        RegularScaffold(TITLE) {
            Category {
                PreferencePageProvider.Entry()
                ListPreferencePageProvider.Entry()
            }
            Category {
                SwitchPreferencePageProvider.Entry()
                MainSwitchPreferencePageProvider.Entry()
                TwoTargetSwitchPreferencePageProvider.Entry()
            }
            Category {
                ZeroStatePreferencePageProvider.Entry()
                IntroPreferencePageProvider.Entry()
                TopIntroPreferencePageProvider.Entry()
            }
        }
    }

    @Composable
@@ -52,8 +57,4 @@ object PreferenceMainPageProvider : SettingsPageProvider {
            override val onClick = navigator(name)
        })
    }

    override fun getTitle(arguments: Bundle?): String {
        return TITLE
    }
}
+7 −12
Original line number Diff line number Diff line
@@ -28,15 +28,13 @@ import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.res.stringResource
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.SpaEnvironmentFactory
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
import com.android.settingslib.spa.widget.preference.Preference
import com.android.settingslib.spa.widget.preference.PreferenceModel
import com.android.settingslib.spa.widget.preference.SimplePreferenceMacro
import com.android.settingslib.spa.widget.scaffold.RegularScaffold
import com.android.settingslib.spa.widget.ui.Category
import com.android.settingslib.spa.widget.ui.SettingsIcon
@@ -46,7 +44,6 @@ object PreferencePageProvider : SettingsPageProvider {

    override val name = "Preference"
    private const val PAGE_TITLE = "Sample Preference"
    private val owner = createSettingsPage()

    @Composable
    override fun Page(arguments: Bundle?) {
@@ -109,14 +106,12 @@ object PreferencePageProvider : SettingsPageProvider {
        }
    }

    fun buildInjectEntry(): SettingsEntryBuilder {
        return SettingsEntryBuilder.createInject(owner = owner)
            .setMacro {
                SimplePreferenceMacro(
                    title = PAGE_TITLE,
                    clickRoute = name
                )
            }
    @Composable
    fun Entry() {
        Preference(model = object : PreferenceModel {
            override val title = PAGE_TITLE
            override val onClick = navigator(name)
        })
    }
}

Loading