diff options
4 files changed, 24 insertions, 1 deletions
diff --git a/api/system-current.txt b/api/system-current.txt index d238ed9c3690..d43353f1c07c 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -5763,6 +5763,7 @@ package android.provider { field public static final String LOCK_SCREEN_ALLOW_PRIVATE_NOTIFICATIONS = "lock_screen_allow_private_notifications"; field public static final String LOCK_SCREEN_SHOW_NOTIFICATIONS = "lock_screen_show_notifications"; field public static final String MANUAL_RINGER_TOGGLE_COUNT = "manual_ringer_toggle_count"; + field public static final String THEME_CUSTOMIZATION_OVERLAY_PACKAGES = "theme_customization_overlay_packages"; field public static final String USER_SETUP_COMPLETE = "user_setup_complete"; field public static final int USER_SETUP_PERSONALIZATION_COMPLETE = 10; // 0xa field public static final int USER_SETUP_PERSONALIZATION_NOT_STARTED = 0; // 0x0 diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index c1704ba237cc..618fbd07ad9e 100644 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -8421,6 +8421,20 @@ public final class Settings { public static final String LOCATION_ACCESS_CHECK_DELAY_MILLIS = "location_access_check_delay_millis"; + + /** + * Comma separated list of enabled overlay packages for all android.theme.customization.* + * categories. If there is no corresponding package included for a category, then all + * overlay packages in that category must be disabled. + * @hide + */ + @SystemApi + public static final String THEME_CUSTOMIZATION_OVERLAY_PACKAGES = + "theme_customization_overlay_packages"; + + private static final Validator THEME_CUSTOMIZATION_OVERLAY_PACKAGES_VALIDATOR = + new SettingsValidators.PackageNameListValidator(","); + /** * This are the settings to be backed up. * @@ -8544,6 +8558,7 @@ public final class Settings { LOCK_SCREEN_WHEN_TRUST_LOST, SKIP_GESTURE, SILENCE_GESTURE, + THEME_CUSTOMIZATION_OVERLAY_PACKAGES, }; /** @@ -8714,6 +8729,8 @@ public final class Settings { VALIDATORS.put(LOCK_SCREEN_WHEN_TRUST_LOST, LOCK_SCREEN_WHEN_TRUST_LOST_VALIDATOR); VALIDATORS.put(SKIP_GESTURE, SKIP_GESTURE_VALIDATOR); VALIDATORS.put(SILENCE_GESTURE, SILENCE_GESTURE_VALIDATOR); + VALIDATORS.put(THEME_CUSTOMIZATION_OVERLAY_PACKAGES, + THEME_CUSTOMIZATION_OVERLAY_PACKAGES_VALIDATOR); } /** diff --git a/core/proto/android/providers/settings/secure.proto b/core/proto/android/providers/settings/secure.proto index 4bfd4d236abb..c0d6139b117a 100644 --- a/core/proto/android/providers/settings/secure.proto +++ b/core/proto/android/providers/settings/secure.proto @@ -528,8 +528,9 @@ message SecureSettingsProto { optional SettingProto skip_gesture_enabled = 74 [ (android.privacy).dest = DEST_AUTOMATIC ]; optional SettingProto silence_gesture_enabled = 75 [ (android.privacy).dest = DEST_AUTOMATIC ]; + optional SettingProto theme_customization_overlay_packages = 76 [ (android.privacy).dest = DEST_AUTOMATIC ]; // Please insert fields in alphabetical order and group them into messages // if possible (to avoid reaching the method limit). - // Next tag = 76; + // Next tag = 77; } diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProtoDumpUtil.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProtoDumpUtil.java index 55358b6a16c6..808739a69920 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProtoDumpUtil.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProtoDumpUtil.java @@ -2374,6 +2374,10 @@ class SettingsProtoDumpUtil { Settings.Secure.SILENCE_GESTURE, SecureSettingsProto.SILENCE_GESTURE_ENABLED); + dumpSetting(s, p, + Settings.Secure.THEME_CUSTOMIZATION_OVERLAY_PACKAGES, + SecureSettingsProto.THEME_CUSTOMIZATION_OVERLAY_PACKAGES); + // Please insert new settings using the same order as in SecureSettingsProto. p.end(token); |