From 269c11eee1ceed0b5959dce3f5d139ea3ac02ce8 Mon Sep 17 00:00:00 2001 From: Suprabh Shukla Date: Wed, 2 Dec 2015 16:51:16 -0800 Subject: [PATCH] Added default config to enable adding users from lockscreen A config value is added for enabling/disabling the ability to add users while screen is locked. The config value, currently false, is read and applied to the setting only if the user has not set the value as true/false explicitly. Bug-Id: b/24662310 Change-Id: Ie00ab0952c64cbc9805794bc0dde350920750026 --- .../SettingsProvider/res/values/defaults.xml | 3 +++ .../providers/settings/SettingsProvider.java | 23 ++++++++++++++++--- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/packages/SettingsProvider/res/values/defaults.xml b/packages/SettingsProvider/res/values/defaults.xml index c324abd0dd22f..6680d8857ccbc 100644 --- a/packages/SettingsProvider/res/values/defaults.xml +++ b/packages/SettingsProvider/res/values/defaults.xml @@ -209,4 +209,7 @@ + + + false diff --git a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java index fbf8a2bd952d6..7365e666ae3c3 100644 --- a/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java +++ b/packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java @@ -61,6 +61,7 @@ import android.util.SparseArray; import com.android.internal.annotations.GuardedBy; import com.android.internal.content.PackageMonitor; import com.android.internal.os.BackgroundThread; +import com.android.providers.settings.SettingsState.Setting; import java.io.File; import java.io.FileDescriptor; @@ -72,8 +73,6 @@ import java.util.List; import java.util.Set; import java.util.regex.Pattern; -import com.android.providers.settings.SettingsState.Setting; - /** *

* This class is a content provider that publishes the system settings. @@ -1891,7 +1890,7 @@ public class SettingsProvider extends ContentProvider { } private final class UpgradeController { - private static final int SETTINGS_VERSION = 122; + private static final int SETTINGS_VERSION = 123; private final int mUserId; @@ -2043,6 +2042,24 @@ public class SettingsProvider extends ContentProvider { } currentVersion = 122; } + + if (currentVersion == 122) { + // Version 123: Adding a default value for the ability to add a user from + // the lock screen. + if (userId == UserHandle.USER_SYSTEM) { + final SettingsState globalSettings = getGlobalSettingsLocked(); + Setting currentSetting = globalSettings.getSettingLocked( + Settings.Global.ADD_USERS_WHEN_LOCKED); + if (currentSetting == null) { + globalSettings.insertSettingLocked( + Settings.Global.ADD_USERS_WHEN_LOCKED, + getContext().getResources().getBoolean( + R.bool.def_add_users_from_lockscreen) ? "1" : "0", + SettingsState.SYSTEM_PACKAGE_NAME); + } + } + currentVersion = 123; + } // vXXX: Add new settings above this point. // Return the current version.