From 2c3cc8d2912016b204a604670c18ac3e3b58ed99 Mon Sep 17 00:00:00 2001 From: Nitin Sangar Date: Wed, 21 Dec 2022 13:06:32 -0800 Subject: [PATCH] Add new Wear setting for Lockscreen Bug: 263132631 Test: Tested Locally Change-Id: Ia7024aed24115384da7777b74a5bdc26551b666b --- core/java/android/provider/Settings.java | 31 +++++++++++++++++++ .../validators/GlobalSettingsValidators.java | 8 +++++ .../android/provider/SettingsBackupTest.java | 3 +- 3 files changed, 41 insertions(+), 1 deletion(-) diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java index ff57003f573f1..3902a1560e1b8 100644 --- a/core/java/android/provider/Settings.java +++ b/core/java/android/provider/Settings.java @@ -18196,6 +18196,37 @@ public final class Settings { */ public static final String WRIST_ORIENTATION_MODE = "wear_wrist_orientation_mode"; + /** + * Current lock screen state of the device + * (null = default value of this setting (lockscreen is never set), + * 0 = {@link #LOCK_SCREEN_STATE_NONE}, + * 1 = {@link #LOCK_SCREEN_STATE_PIN}, + * 2 = {@link #LOCK_SCREEN_STATE_PATTERN}) + * @hide + */ + public static final String LOCK_SCREEN_STATE = "lock_screen_state"; + + /** + * No lock screen set + * One of the possible states for {@link #LOCK_SCREEN_STATE}. + * @hide + */ + public static final int LOCK_SCREEN_STATE_NONE = 0; + + /** + * Lock screen set as a pin + * One of the possible states for {@link #LOCK_SCREEN_STATE}. + * @hide + */ + public static final int LOCK_SCREEN_STATE_PIN = 1; + + /** + * Lock screen set as a pattern + * One of the possible states for {@link #LOCK_SCREEN_STATE}. + * @hide + */ + public static final int LOCK_SCREEN_STATE_PATTERN = 2; + /** * Setting indicating the name of the Wear OS app package containing the device's sysui. * diff --git a/packages/SettingsProvider/src/android/provider/settings/validators/GlobalSettingsValidators.java b/packages/SettingsProvider/src/android/provider/settings/validators/GlobalSettingsValidators.java index 7b8ca4d36ed88..673a3abf5de72 100644 --- a/packages/SettingsProvider/src/android/provider/settings/validators/GlobalSettingsValidators.java +++ b/packages/SettingsProvider/src/android/provider/settings/validators/GlobalSettingsValidators.java @@ -280,6 +280,14 @@ public class GlobalSettingsValidators { VALIDATORS.put(Global.Wearable.AMBIENT_LOW_BIT_ENABLED, BOOLEAN_VALIDATOR); VALIDATORS.put(Global.Wearable.AMBIENT_PLUGGED_TIMEOUT_MIN, ANY_INTEGER_VALIDATOR); VALIDATORS.put(Global.Wearable.AMBIENT_TILT_TO_BRIGHT, BOOLEAN_VALIDATOR); + VALIDATORS.put( + Global.Wearable.LOCK_SCREEN_STATE, + new DiscreteValueValidator( + new String[] { + String.valueOf(Global.Wearable.LOCK_SCREEN_STATE_NONE), + String.valueOf(Global.Wearable.LOCK_SCREEN_STATE_PIN), + String.valueOf(Global.Wearable.LOCK_SCREEN_STATE_PATTERN) + })); VALIDATORS.put( Global.Wearable.PAIRED_DEVICE_OS_TYPE, new DiscreteValueValidator( diff --git a/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java b/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java index 01740319a9a1c..3782ce434182b 100644 --- a/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java +++ b/packages/SettingsProvider/test/src/android/provider/SettingsBackupTest.java @@ -659,7 +659,8 @@ public class SettingsBackupTest { Settings.Global.Wearable.BEDTIME_MODE, Settings.Global.Wearable.BEDTIME_HARD_MODE, Settings.Global.Wearable.EARLY_UPDATES_STATUS, - Settings.Global.Wearable.RSB_WAKE_ENABLED); + Settings.Global.Wearable.RSB_WAKE_ENABLED, + Settings.Global.Wearable.LOCK_SCREEN_STATE); private static final Set BACKUP_DENY_LIST_SECURE_SETTINGS = newHashSet(