Loading packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/SpaEnvironment.kt +2 −2 Original line number Diff line number Diff line Loading @@ -35,7 +35,7 @@ object SpaEnvironment { val PageProviderRepository: SettingsPageProviderRepository by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { SettingsPageProviderRepository( allPagesList = listOf( allPageProviders = listOf( HomePageProvider, PreferenceMainPageProvider, PreferencePageProvider, Loading @@ -48,7 +48,7 @@ object SpaEnvironment { FooterPageProvider, IllustrationPageProvider, ), rootPageData = listOf( rootPages = listOf( SettingsPage(HomePageProvider.name) ) + ArgumentPageProvider.buildRootPages() ) Loading packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/common/SettingsEntryRepository.kt +2 −0 Original line number Diff line number Diff line Loading @@ -59,6 +59,8 @@ class SettingsEntryRepository(sppRepository: SettingsPageProviderRepository) { } } } logMsg("Initialize Completed: ${entryMap.size} entries in ${pageToEntryListMap.size} pages") } fun printAllPages() { Loading packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/common/SettingsPageProviderRepository.kt +18 −12 Original line number Diff line number Diff line Loading @@ -16,28 +16,30 @@ package com.android.settingslib.spa.framework.common import android.util.Log class SettingsPageProviderRepository( allPagesList: List<SettingsPageProvider>, private val rootPages: List<String> = emptyList(), // TODO: deprecate rootPages above private val rootPageData: List<SettingsPage> = emptyList(), allPageProviders: List<SettingsPageProvider>, private val rootPages: List<SettingsPage> = emptyList(), ) { // Map of page name to its provider. private val pageProviderMap: Map<String, SettingsPageProvider> = allPagesList.associateBy { it.name } private val pageProviderMap: Map<String, SettingsPageProvider> init { pageProviderMap = allPageProviders.associateBy { it.name } logMsg("Initialize Completed: ${pageProviderMap.size} spp") } fun getDefaultStartPageName(): String { if (rootPageData.isNotEmpty()) { return rootPageData[0].name return if (rootPages.isNotEmpty()) { rootPages[0].name } else { return rootPages.getOrElse(0) { return "" } "" } } fun getAllRootPages(): Collection<SettingsPage> { return rootPageData return rootPages } fun getAllProviders(): Collection<SettingsPageProvider> { Loading @@ -48,3 +50,7 @@ class SettingsPageProviderRepository( return pageProviderMap[name] } } private fun logMsg(message: String) { Log.d("SppRepo", message) } Loading
packages/SettingsLib/Spa/gallery/src/com/android/settingslib/spa/gallery/SpaEnvironment.kt +2 −2 Original line number Diff line number Diff line Loading @@ -35,7 +35,7 @@ object SpaEnvironment { val PageProviderRepository: SettingsPageProviderRepository by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { SettingsPageProviderRepository( allPagesList = listOf( allPageProviders = listOf( HomePageProvider, PreferenceMainPageProvider, PreferencePageProvider, Loading @@ -48,7 +48,7 @@ object SpaEnvironment { FooterPageProvider, IllustrationPageProvider, ), rootPageData = listOf( rootPages = listOf( SettingsPage(HomePageProvider.name) ) + ArgumentPageProvider.buildRootPages() ) Loading
packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/common/SettingsEntryRepository.kt +2 −0 Original line number Diff line number Diff line Loading @@ -59,6 +59,8 @@ class SettingsEntryRepository(sppRepository: SettingsPageProviderRepository) { } } } logMsg("Initialize Completed: ${entryMap.size} entries in ${pageToEntryListMap.size} pages") } fun printAllPages() { Loading
packages/SettingsLib/Spa/spa/src/com/android/settingslib/spa/framework/common/SettingsPageProviderRepository.kt +18 −12 Original line number Diff line number Diff line Loading @@ -16,28 +16,30 @@ package com.android.settingslib.spa.framework.common import android.util.Log class SettingsPageProviderRepository( allPagesList: List<SettingsPageProvider>, private val rootPages: List<String> = emptyList(), // TODO: deprecate rootPages above private val rootPageData: List<SettingsPage> = emptyList(), allPageProviders: List<SettingsPageProvider>, private val rootPages: List<SettingsPage> = emptyList(), ) { // Map of page name to its provider. private val pageProviderMap: Map<String, SettingsPageProvider> = allPagesList.associateBy { it.name } private val pageProviderMap: Map<String, SettingsPageProvider> init { pageProviderMap = allPageProviders.associateBy { it.name } logMsg("Initialize Completed: ${pageProviderMap.size} spp") } fun getDefaultStartPageName(): String { if (rootPageData.isNotEmpty()) { return rootPageData[0].name return if (rootPages.isNotEmpty()) { rootPages[0].name } else { return rootPages.getOrElse(0) { return "" } "" } } fun getAllRootPages(): Collection<SettingsPage> { return rootPageData return rootPages } fun getAllProviders(): Collection<SettingsPageProvider> { Loading @@ -48,3 +50,7 @@ class SettingsPageProviderRepository( return pageProviderMap[name] } } private fun logMsg(message: String) { Log.d("SppRepo", message) }