From cfcf20c70acb5fe7b139f73fde3d5bc2a6dc2f35 Mon Sep 17 00:00:00 2001 From: Jacky Wang Date: Fri, 27 Dec 2024 08:00:44 +0800 Subject: [PATCH] [Catalyst] Provide screen key to @ProvidePreferenceScreen NO_IFTTT=Catalyst only Bug: 386179791 Flag: com.android.settings.flags.catalyst Test: manual Change-Id: Ie8106ec45a32e4a61826512fc62746c9ffc47d9c --- src/com/android/settings/SettingsApplication.java | 14 +++++++------- .../settings/accessibility/ColorAndMotionScreen.kt | 4 ++-- .../settings/accessibility/TextReadingScreen.kt | 4 ++-- .../accessibility/VibrationIntensityScreen.kt | 4 ++-- .../settings/accessibility/VibrationScreen.kt | 4 ++-- .../connecteddevice/BluetoothDashboardScreen.kt | 4 ++-- .../android/settings/datausage/DataSaverScreen.kt | 6 +++--- .../deviceinfo/aboutphone/MyDeviceInfoScreen.kt | 4 ++-- .../firmwareversion/FirmwareVersionScreen.kt | 4 ++-- .../deviceinfo/legal/LegalSettingsScreen.kt | 4 ++-- .../deviceinfo/legal/ModuleLicensesScreen.kt | 4 ++-- .../settings/display/AutoBrightnessScreen.kt | 4 ++-- src/com/android/settings/display/DisplayScreen.kt | 4 ++-- .../settings/display/ScreenTimeoutScreen.kt | 4 ++-- .../settings/display/darkmode/DarkModeScreen.kt | 8 ++++---- .../fuelgauge/batterysaver/BatterySaverScreen.kt | 4 ++-- .../batteryusage/PowerUsageSummaryScreen.kt | 11 ++++++----- .../settings/language/LanguageSettingScreen.kt | 10 +++------- .../android/settings/location/LocationScreen.kt | 4 ++-- .../settings/network/AdaptiveConnectivityScreen.kt | 4 ++-- .../settings/network/MobileNetworkListScreen.kt | 4 ++-- .../settings/network/NetworkDashboardScreen.kt | 4 ++-- .../settings/network/NetworkProviderScreen.kt | 4 ++-- .../settings/network/tether/TetherScreen.kt | 4 ++-- .../android/settings/notification/SoundScreen.kt | 4 ++-- .../security/LockScreenPreferenceScreen.kt | 4 ++-- .../settings/wifi/calling/WifiCallingScreen.kt | 4 ++-- 27 files changed, 67 insertions(+), 70 deletions(-) diff --git a/src/com/android/settings/SettingsApplication.java b/src/com/android/settings/SettingsApplication.java index 99d3d922a0c..f2257d4dfdf 100644 --- a/src/com/android/settings/SettingsApplication.java +++ b/src/com/android/settings/SettingsApplication.java @@ -43,7 +43,8 @@ import com.android.settings.overlay.FeatureFactoryImpl; import com.android.settings.spa.SettingsSpaEnvironment; import com.android.settingslib.applications.AppIconCacheManager; import com.android.settingslib.datastore.BackupRestoreStorageManager; -import com.android.settingslib.metadata.PreferenceScreenMetadata; +import com.android.settingslib.metadata.FixedArrayMap; +import com.android.settingslib.metadata.PreferenceScreenMetadataCreator; import com.android.settingslib.metadata.PreferenceScreenRegistry; import com.android.settingslib.metadata.ProvidePreferenceScreenOptions; import com.android.settingslib.preference.PreferenceBindingFactory; @@ -52,7 +53,6 @@ import com.android.settingslib.spa.framework.common.SpaEnvironmentFactory; import com.google.android.setupcompat.util.WizardManagerHelper; import java.lang.ref.WeakReference; -import java.util.List; /** Settings application which sets up activity embedding rules for the large screen device. */ @ProvidePreferenceScreenOptions( @@ -75,8 +75,8 @@ public class SettingsApplication extends Application { super.onCreate(); if (Flags.catalyst()) { - PreferenceScreenRegistry.INSTANCE.setPreferenceScreensSupplier( - this::getPreferenceScreens); + PreferenceScreenRegistry.INSTANCE.setPreferenceScreenMetadataCreators( + getPreferenceScreenCreators()); PreferenceBindingFactory.setDefaultFactory(new SettingsPreferenceBindingFactory()); } @@ -106,11 +106,11 @@ public class SettingsApplication extends Application { registerActivityLifecycleCallbacks(new DeveloperOptionsActivityLifecycle()); } - /** Returns the screens using metadata. */ - protected List getPreferenceScreens() { + /** Returns the creators of preference screen metadata. */ + protected FixedArrayMap getPreferenceScreenCreators() { // PreferenceScreenCollector is generated by annotation processor from classes annotated // with @ProvidePreferenceScreen - return PreferenceScreenCollector.get(this); + return PreferenceScreenCollector.get(); } @Override diff --git a/src/com/android/settings/accessibility/ColorAndMotionScreen.kt b/src/com/android/settings/accessibility/ColorAndMotionScreen.kt index 2d5eb0f8ea1..7cb403bddf5 100644 --- a/src/com/android/settings/accessibility/ColorAndMotionScreen.kt +++ b/src/com/android/settings/accessibility/ColorAndMotionScreen.kt @@ -26,7 +26,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(ColorAndMotionScreen.KEY) class ColorAndMotionScreen : PreferenceScreenCreator { override val key: String get() = KEY @@ -44,7 +44,7 @@ class ColorAndMotionScreen : PreferenceScreenCreator { override fun fragmentClass() = ColorAndMotionFragment::class.java override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { + preferenceHierarchy(context, this) { +RemoveAnimationsPreference() } diff --git a/src/com/android/settings/accessibility/TextReadingScreen.kt b/src/com/android/settings/accessibility/TextReadingScreen.kt index 8970d5228db..02272786b6d 100644 --- a/src/com/android/settings/accessibility/TextReadingScreen.kt +++ b/src/com/android/settings/accessibility/TextReadingScreen.kt @@ -22,7 +22,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(TextReadingScreen.KEY) class TextReadingScreen : PreferenceScreenCreator { override val key: String get() = KEY @@ -36,7 +36,7 @@ class TextReadingScreen : PreferenceScreenCreator { override fun hasCompleteHierarchy() = false - override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) {} + override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(context, this) {} companion object { const val KEY = "text_reading_screen" diff --git a/src/com/android/settings/accessibility/VibrationIntensityScreen.kt b/src/com/android/settings/accessibility/VibrationIntensityScreen.kt index 0a372308066..ce366dc1f0d 100644 --- a/src/com/android/settings/accessibility/VibrationIntensityScreen.kt +++ b/src/com/android/settings/accessibility/VibrationIntensityScreen.kt @@ -31,7 +31,7 @@ import com.android.settingslib.preference.PreferenceScreenCreator // We might be able to consolidate this into VibrationScreen with PreferenceHierarchy choosing // between toggle or slider preferences based on device config, depending on how overlays are done. // LINT.IfChange -@ProvidePreferenceScreen +@ProvidePreferenceScreen(VibrationIntensityScreen.KEY) class VibrationIntensityScreen : PreferenceScreenCreator, PreferenceAvailabilityProvider { override val key: String get() = KEY @@ -52,7 +52,7 @@ class VibrationIntensityScreen : PreferenceScreenCreator, PreferenceAvailability override fun fragmentClass(): Class? = VibrationIntensitySettingsFragment::class.java - override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) { + override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(context, this) { +VibrationMainSwitchPreference() } diff --git a/src/com/android/settings/accessibility/VibrationScreen.kt b/src/com/android/settings/accessibility/VibrationScreen.kt index 63a7c4492a1..6e3e54f2951 100644 --- a/src/com/android/settings/accessibility/VibrationScreen.kt +++ b/src/com/android/settings/accessibility/VibrationScreen.kt @@ -29,7 +29,7 @@ import com.android.settingslib.preference.PreferenceScreenCreator * Accessibility settings for vibration. */ // LINT.IfChange -@ProvidePreferenceScreen +@ProvidePreferenceScreen(VibrationScreen.KEY) class VibrationScreen : PreferenceScreenCreator, PreferenceAvailabilityProvider { override val key: String get() = KEY @@ -49,7 +49,7 @@ class VibrationScreen : PreferenceScreenCreator, PreferenceAvailabilityProvider override fun fragmentClass(): Class? = VibrationSettings::class.java - override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) { + override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(context, this) { +VibrationMainSwitchPreference() } diff --git a/src/com/android/settings/connecteddevice/BluetoothDashboardScreen.kt b/src/com/android/settings/connecteddevice/BluetoothDashboardScreen.kt index e6985cacaa9..f1f5bb54015 100644 --- a/src/com/android/settings/connecteddevice/BluetoothDashboardScreen.kt +++ b/src/com/android/settings/connecteddevice/BluetoothDashboardScreen.kt @@ -25,7 +25,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(BluetoothDashboardScreen.KEY) class BluetoothDashboardScreen : PreferenceScreenCreator { override val key: String get() = KEY @@ -46,7 +46,7 @@ class BluetoothDashboardScreen : PreferenceScreenCreator { makeLaunchIntent(context, BluetoothDashboardActivity::class.java, metadata?.key) override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { + preferenceHierarchy(context, this) { val bluetoothDataStore = BluetoothPreference.createDataStore(context) +BluetoothPreference(bluetoothDataStore) +BluetoothFooterPreference(bluetoothDataStore) diff --git a/src/com/android/settings/datausage/DataSaverScreen.kt b/src/com/android/settings/datausage/DataSaverScreen.kt index fd4441fbbe2..6974c93243f 100644 --- a/src/com/android/settings/datausage/DataSaverScreen.kt +++ b/src/com/android/settings/datausage/DataSaverScreen.kt @@ -20,6 +20,7 @@ import android.content.Context import android.telephony.SubscriptionManager.INVALID_SUBSCRIPTION_ID import com.android.settings.R import com.android.settings.Settings.DataSaverSummaryActivity +import com.android.settings.datausage.DataSaverMainSwitchPreference.Companion.KEY as DATA_SAVER_KEY import com.android.settings.flags.Flags import com.android.settings.utils.makeLaunchIntent import com.android.settingslib.datastore.HandlerExecutor @@ -32,9 +33,8 @@ import com.android.settingslib.metadata.PreferenceSummaryProvider import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -import com.android.settings.datausage.DataSaverMainSwitchPreference.Companion.KEY as DATA_SAVER_KEY -@ProvidePreferenceScreen +@ProvidePreferenceScreen(DataSaverScreen.KEY) class DataSaverScreen(context: Context) : PreferenceScreenCreator, PreferenceAvailabilityProvider, @@ -75,7 +75,7 @@ class DataSaverScreen(context: Context) : makeLaunchIntent(context, DataSaverSummaryActivity::class.java, metadata?.key) override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { +DataSaverMainSwitchPreference() } + preferenceHierarchy(context, this) { +DataSaverMainSwitchPreference() } override fun hasCompleteHierarchy() = false diff --git a/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoScreen.kt b/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoScreen.kt index 254a91e5ab3..4e9a45776c3 100644 --- a/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoScreen.kt +++ b/src/com/android/settings/deviceinfo/aboutphone/MyDeviceInfoScreen.kt @@ -27,7 +27,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(MyDeviceInfoScreen.KEY) class MyDeviceInfoScreen : PreferenceScreenCreator, PreferenceSummaryProvider, PreferenceIconProvider { override val key: String @@ -52,7 +52,7 @@ class MyDeviceInfoScreen : override fun fragmentClass() = MyDeviceInfoFragment::class.java - override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) {} + override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(context, this) {} override fun hasCompleteHierarchy() = false diff --git a/src/com/android/settings/deviceinfo/firmwareversion/FirmwareVersionScreen.kt b/src/com/android/settings/deviceinfo/firmwareversion/FirmwareVersionScreen.kt index fbc749bb1ec..035f1cb899e 100644 --- a/src/com/android/settings/deviceinfo/firmwareversion/FirmwareVersionScreen.kt +++ b/src/com/android/settings/deviceinfo/firmwareversion/FirmwareVersionScreen.kt @@ -25,7 +25,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(FirmwareVersionScreen.KEY) class FirmwareVersionScreen : PreferenceScreenCreator, PreferenceSummaryProvider { override fun isFlagEnabled(context: Context) = Flags.catalystFirmwareVersion() @@ -45,7 +45,7 @@ class FirmwareVersionScreen : PreferenceScreenCreator, PreferenceSummaryProvider override fun fragmentClass() = FirmwareVersionSettings::class.java override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { + preferenceHierarchy(context, this) { +FirmwareVersionDetailPreference() +SecurityPatchLevelPreference() +MainlineModuleVersionPreference() diff --git a/src/com/android/settings/deviceinfo/legal/LegalSettingsScreen.kt b/src/com/android/settings/deviceinfo/legal/LegalSettingsScreen.kt index f990b5dbeb0..42bce16374d 100644 --- a/src/com/android/settings/deviceinfo/legal/LegalSettingsScreen.kt +++ b/src/com/android/settings/deviceinfo/legal/LegalSettingsScreen.kt @@ -23,7 +23,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(LegalSettingsScreen.KEY) open class LegalSettingsScreen : PreferenceScreenCreator { override val key: String get() = KEY @@ -36,7 +36,7 @@ open class LegalSettingsScreen : PreferenceScreenCreator { override fun fragmentClass() = LegalSettings::class.java override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { + preferenceHierarchy(context, this) { +LegalPreference("copyright", R.string.copyright_title, "android.settings.COPYRIGHT") +LegalPreference("license", R.string.license_title, "android.settings.LICENSE") +LegalPreference("terms", R.string.terms_title, "android.settings.TERMS") diff --git a/src/com/android/settings/deviceinfo/legal/ModuleLicensesScreen.kt b/src/com/android/settings/deviceinfo/legal/ModuleLicensesScreen.kt index c7f5e9c05d6..9a180915258 100644 --- a/src/com/android/settings/deviceinfo/legal/ModuleLicensesScreen.kt +++ b/src/com/android/settings/deviceinfo/legal/ModuleLicensesScreen.kt @@ -23,7 +23,7 @@ import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator // LINT.IfChange -@ProvidePreferenceScreen +@ProvidePreferenceScreen(ModuleLicensesScreen.KEY) class ModuleLicensesScreen : PreferenceScreenCreator, PreferenceAvailabilityProvider { override val key: String get() = KEY @@ -39,7 +39,7 @@ class ModuleLicensesScreen : PreferenceScreenCreator, PreferenceAvailabilityProv override fun fragmentClass() = ModuleLicensesDashboard::class.java - override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) {} + override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(context, this) {} override fun isAvailable(context: Context): Boolean { val modules = context.packageManager.getInstalledModules(/* flags= */ 0) diff --git a/src/com/android/settings/display/AutoBrightnessScreen.kt b/src/com/android/settings/display/AutoBrightnessScreen.kt index 945788aecde..ed9e078ffb6 100644 --- a/src/com/android/settings/display/AutoBrightnessScreen.kt +++ b/src/com/android/settings/display/AutoBrightnessScreen.kt @@ -40,7 +40,7 @@ import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenBinding import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(AutoBrightnessScreen.KEY) class AutoBrightnessScreen : PreferenceScreenCreator, PreferenceScreenBinding, @@ -60,7 +60,7 @@ class AutoBrightnessScreen : override fun hasCompleteHierarchy() = false - override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) {} + override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(context, this) {} override fun storage(context: Context): KeyValueStore = AutoBrightnessDataStore(SettingsSystemStore.get(context)) diff --git a/src/com/android/settings/display/DisplayScreen.kt b/src/com/android/settings/display/DisplayScreen.kt index d8a6be11e21..909e3004ba4 100644 --- a/src/com/android/settings/display/DisplayScreen.kt +++ b/src/com/android/settings/display/DisplayScreen.kt @@ -30,7 +30,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(DisplayScreen.KEY) open class DisplayScreen : PreferenceScreenCreator, PreferenceAvailabilityProvider, PreferenceIconProvider { override val key: String @@ -52,7 +52,7 @@ open class DisplayScreen : override fun fragmentClass() = DisplaySettings::class.java override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { + preferenceHierarchy(context, this) { +BrightnessLevelPreference() +AutoBrightnessScreen.KEY +LockScreenPreferenceScreen.KEY diff --git a/src/com/android/settings/display/ScreenTimeoutScreen.kt b/src/com/android/settings/display/ScreenTimeoutScreen.kt index 9dcd1021621..de4d34747b1 100644 --- a/src/com/android/settings/display/ScreenTimeoutScreen.kt +++ b/src/com/android/settings/display/ScreenTimeoutScreen.kt @@ -27,7 +27,7 @@ import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator // TODO(b/368359967): The entry point logic is not yet migrated -@ProvidePreferenceScreen +@ProvidePreferenceScreen(ScreenTimeoutScreen.KEY) class ScreenTimeoutScreen : PreferenceScreenCreator { override val key: String @@ -43,7 +43,7 @@ class ScreenTimeoutScreen : PreferenceScreenCreator { override fun hasCompleteHierarchy() = false override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { +AdaptiveSleepPreference() } + preferenceHierarchy(context, this) { +AdaptiveSleepPreference() } override fun getLaunchIntent(context: Context, metadata: PreferenceMetadata?) = makeLaunchIntent(context, ScreenTimeoutActivity::class.java, metadata?.key) diff --git a/src/com/android/settings/display/darkmode/DarkModeScreen.kt b/src/com/android/settings/display/darkmode/DarkModeScreen.kt index a768875ff00..963a641c4d3 100644 --- a/src/com/android/settings/display/darkmode/DarkModeScreen.kt +++ b/src/com/android/settings/display/darkmode/DarkModeScreen.kt @@ -37,7 +37,7 @@ import com.android.settingslib.preference.PreferenceScreenBinding import com.android.settingslib.preference.PreferenceScreenCreator // LINT.IfChange -@ProvidePreferenceScreen +@ProvidePreferenceScreen(DarkModeScreen.KEY) class DarkModeScreen(context: Context) : PreferenceScreenCreator, PreferenceScreenBinding, @@ -80,7 +80,7 @@ class DarkModeScreen(context: Context) : override fun hasCompleteHierarchy() = false - override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) {} + override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(context, this) {} override fun storage(context: Context): KeyValueStore = darkModeStorage @@ -89,8 +89,8 @@ class DarkModeScreen(context: Context) : override fun bind(preference: Preference, metadata: PreferenceMetadata) { super.bind(preference, metadata) if (preference is DarkModePreference) preference.setCatalystEnabled(true) - (preference as PrimarySwitchPreference).apply { - isSwitchEnabled = isEnabled() + (preference as? PrimarySwitchPreference)?.apply { + isSwitchEnabled = isEnabled isChecked = darkModeStorage.getBoolean(KEY) == true } } diff --git a/src/com/android/settings/fuelgauge/batterysaver/BatterySaverScreen.kt b/src/com/android/settings/fuelgauge/batterysaver/BatterySaverScreen.kt index d0220736612..11a76e50506 100644 --- a/src/com/android/settings/fuelgauge/batterysaver/BatterySaverScreen.kt +++ b/src/com/android/settings/fuelgauge/batterysaver/BatterySaverScreen.kt @@ -22,7 +22,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(BatterySaverScreen.KEY) open class BatterySaverScreen : PreferenceScreenCreator { override val key: String get() = KEY @@ -40,7 +40,7 @@ open class BatterySaverScreen : PreferenceScreenCreator { override fun hasCompleteHierarchy() = false override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { +BatterySaverPreference() order -100 } + preferenceHierarchy(context, this) { +BatterySaverPreference() order -100 } companion object { const val KEY = "battery_saver_screen" diff --git a/src/com/android/settings/fuelgauge/batteryusage/PowerUsageSummaryScreen.kt b/src/com/android/settings/fuelgauge/batteryusage/PowerUsageSummaryScreen.kt index 9ff46b92663..7dc7a773f9f 100644 --- a/src/com/android/settings/fuelgauge/batteryusage/PowerUsageSummaryScreen.kt +++ b/src/com/android/settings/fuelgauge/batteryusage/PowerUsageSummaryScreen.kt @@ -26,7 +26,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(PowerUsageSummaryScreen.KEY) class PowerUsageSummaryScreen : PreferenceScreenCreator, PreferenceAvailabilityProvider, PreferenceIconProvider { override val key: String @@ -54,10 +54,11 @@ class PowerUsageSummaryScreen : R.drawable.ic_settings_battery_white } - override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) { - +BatteryHeaderPreference() - +BatteryPercentageSwitchPreference() - } + override fun getPreferenceHierarchy(context: Context) = + preferenceHierarchy(context, this) { + +BatteryHeaderPreference() + +BatteryPercentageSwitchPreference() + } companion object { const val KEY = "power_usage_summary_screen" diff --git a/src/com/android/settings/language/LanguageSettingScreen.kt b/src/com/android/settings/language/LanguageSettingScreen.kt index 09ca11be979..c2b39b779d4 100644 --- a/src/com/android/settings/language/LanguageSettingScreen.kt +++ b/src/com/android/settings/language/LanguageSettingScreen.kt @@ -15,19 +15,15 @@ */ package com.android.settings.language -import android.content.ComponentName import android.content.Context -import android.content.pm.PackageManager import com.android.settings.R -import com.android.settings.Settings.LanguageSettingsActivity import com.android.settings.flags.Flags -import com.android.settingslib.metadata.PreferenceAvailabilityProvider import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen -class LanguageSettingScreen: PreferenceScreenCreator { +@ProvidePreferenceScreen(LanguageSettingScreen.KEY) +class LanguageSettingScreen : PreferenceScreenCreator { override val key: String get() = KEY @@ -46,7 +42,7 @@ class LanguageSettingScreen: PreferenceScreenCreator { override fun fragmentClass() = LanguageSettings::class.java - override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) {} + override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(context, this) {} companion object { const val KEY = "language_setting" diff --git a/src/com/android/settings/location/LocationScreen.kt b/src/com/android/settings/location/LocationScreen.kt index d45b762d102..1aed27a0314 100644 --- a/src/com/android/settings/location/LocationScreen.kt +++ b/src/com/android/settings/location/LocationScreen.kt @@ -25,7 +25,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(LocationScreen.KEY) class LocationScreen : PreferenceScreenCreator, PreferenceSummaryProvider, PreferenceIconProvider { override val key: String get() = KEY @@ -57,7 +57,7 @@ class LocationScreen : PreferenceScreenCreator, PreferenceSummaryProvider, Prefe override fun fragmentClass() = LocationSettings::class.java - override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) {} + override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(context, this) {} companion object { const val KEY = "location_settings" diff --git a/src/com/android/settings/network/AdaptiveConnectivityScreen.kt b/src/com/android/settings/network/AdaptiveConnectivityScreen.kt index 0604236173f..829ec8dc534 100644 --- a/src/com/android/settings/network/AdaptiveConnectivityScreen.kt +++ b/src/com/android/settings/network/AdaptiveConnectivityScreen.kt @@ -23,7 +23,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(AdaptiveConnectivityScreen.KEY) class AdaptiveConnectivityScreen : PreferenceScreenCreator { override val key get() = KEY @@ -35,7 +35,7 @@ class AdaptiveConnectivityScreen : PreferenceScreenCreator { override fun fragmentClass() = AdaptiveConnectivitySettings::class.java - override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) { + override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(context, this) { +AdaptiveConnectivityTogglePreference() } diff --git a/src/com/android/settings/network/MobileNetworkListScreen.kt b/src/com/android/settings/network/MobileNetworkListScreen.kt index d7231ccb711..592260b151d 100644 --- a/src/com/android/settings/network/MobileNetworkListScreen.kt +++ b/src/com/android/settings/network/MobileNetworkListScreen.kt @@ -46,7 +46,7 @@ import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenBinding import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(MobileNetworkListScreen.KEY) class MobileNetworkListScreen : PreferenceScreenCreator, PreferenceScreenBinding, @@ -160,7 +160,7 @@ class MobileNetworkListScreen : override fun fragmentClass() = MobileNetworkListFragment::class.java override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { +MobileDataPreference() } + preferenceHierarchy(context, this) { +MobileDataPreference() } companion object { const val KEY = "mobile_network_list" diff --git a/src/com/android/settings/network/NetworkDashboardScreen.kt b/src/com/android/settings/network/NetworkDashboardScreen.kt index 1ed88c080d1..b80c4a124ed 100644 --- a/src/com/android/settings/network/NetworkDashboardScreen.kt +++ b/src/com/android/settings/network/NetworkDashboardScreen.kt @@ -27,7 +27,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(NetworkDashboardScreen.KEY) class NetworkDashboardScreen : PreferenceScreenCreator, PreferenceIconProvider { override val key: String get() = KEY @@ -51,7 +51,7 @@ class NetworkDashboardScreen : PreferenceScreenCreator, PreferenceIconProvider { makeLaunchIntent(context, NetworkDashboardActivity::class.java, metadata?.key) override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { + preferenceHierarchy(context, this) { +MobileNetworkListScreen.KEY order -15 +AirplaneModePreference() order -5 +DataSaverScreen.KEY order 10 diff --git a/src/com/android/settings/network/NetworkProviderScreen.kt b/src/com/android/settings/network/NetworkProviderScreen.kt index 766ec0c6a51..198eeec1db7 100644 --- a/src/com/android/settings/network/NetworkProviderScreen.kt +++ b/src/com/android/settings/network/NetworkProviderScreen.kt @@ -26,7 +26,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(NetworkProviderScreen.KEY) class NetworkProviderScreen : PreferenceScreenCreator, PreferenceAvailabilityProvider, PreferenceRestrictionMixin { override val key: String @@ -55,7 +55,7 @@ class NetworkProviderScreen : override fun fragmentClass() = NetworkProviderSettings::class.java - override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(this) { + override fun getPreferenceHierarchy(context: Context) = preferenceHierarchy(context, this) { +WifiSwitchPreference() } diff --git a/src/com/android/settings/network/tether/TetherScreen.kt b/src/com/android/settings/network/tether/TetherScreen.kt index 5865c861f58..cd8851326fe 100644 --- a/src/com/android/settings/network/tether/TetherScreen.kt +++ b/src/com/android/settings/network/tether/TetherScreen.kt @@ -35,7 +35,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(TetherScreen.KEY) class TetherScreen : PreferenceScreenCreator, PreferenceTitleProvider, @@ -76,7 +76,7 @@ class TetherScreen : makeLaunchIntent(context, TetherSettingsActivity::class.java, metadata?.key) override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { + preferenceHierarchy(context, this) { val dataSaverStore = DataSaverMainSwitchPreference.createDataStore(context) +WifiHotspotSwitchPreference(context, dataSaverStore) } diff --git a/src/com/android/settings/notification/SoundScreen.kt b/src/com/android/settings/notification/SoundScreen.kt index c0694b9a7ca..44034cc7dd8 100644 --- a/src/com/android/settings/notification/SoundScreen.kt +++ b/src/com/android/settings/notification/SoundScreen.kt @@ -27,7 +27,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(SoundScreen.KEY) class SoundScreen : PreferenceScreenCreator, PreferenceIconProvider { override val key: String get() = KEY @@ -51,7 +51,7 @@ class SoundScreen : PreferenceScreenCreator, PreferenceIconProvider { override fun fragmentClass(): Class? = SoundSettings::class.java override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { + preferenceHierarchy(context, this) { +MediaVolumePreference() order -180 +CallVolumePreference() order -170 +SeparateRingVolumePreference() order -155 diff --git a/src/com/android/settings/security/LockScreenPreferenceScreen.kt b/src/com/android/settings/security/LockScreenPreferenceScreen.kt index 3c00b428ebd..9a3226abe1a 100644 --- a/src/com/android/settings/security/LockScreenPreferenceScreen.kt +++ b/src/com/android/settings/security/LockScreenPreferenceScreen.kt @@ -28,7 +28,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(LockScreenPreferenceScreen.KEY) open class LockScreenPreferenceScreen : PreferenceScreenCreator, PreferenceSummaryProvider { override val key: String get() = KEY @@ -52,7 +52,7 @@ open class LockScreenPreferenceScreen : PreferenceScreenCreator, PreferenceSumma makeLaunchIntent(context, LockScreenSettingsActivity::class.java, metadata?.key) override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { + preferenceHierarchy(context, this) { +AmbientDisplayAlwaysOnPreference() } diff --git a/src/com/android/settings/wifi/calling/WifiCallingScreen.kt b/src/com/android/settings/wifi/calling/WifiCallingScreen.kt index 6ab5e564f06..5eeed054ded 100644 --- a/src/com/android/settings/wifi/calling/WifiCallingScreen.kt +++ b/src/com/android/settings/wifi/calling/WifiCallingScreen.kt @@ -23,7 +23,7 @@ import com.android.settingslib.metadata.ProvidePreferenceScreen import com.android.settingslib.metadata.preferenceHierarchy import com.android.settingslib.preference.PreferenceScreenCreator -@ProvidePreferenceScreen +@ProvidePreferenceScreen(WifiCallingScreen.KEY) class WifiCallingScreen : PreferenceScreenCreator { override val key: String get() = KEY @@ -41,7 +41,7 @@ class WifiCallingScreen : PreferenceScreenCreator { override fun hasCompleteHierarchy() = false override fun getPreferenceHierarchy(context: Context) = - preferenceHierarchy(this) { + preferenceHierarchy(context, this) { val subId = SubscriptionManager.getDefaultSubscriptionId() if (SubscriptionManager.isValidSubscriptionId(subId)) { +WifiCallingMainSwitchPreference(subId)