Only enable multi-user settings if a secure settings flag is set

Use a secure settings key of "multiuser_enabled" that can be
set to "1" to enable the multiuser panel in Settings.

Change-Id: I37d96f6055bc7f87ef271ebdc58f16e7dcecca7b
This commit is contained in:
Amith Yamasani
2012-03-28 10:25:08 -07:00
parent 7313fcd05e
commit fa3eea59e8

View File

@@ -89,6 +89,8 @@ public class Settings extends PreferenceActivity implements ButtonBarHandler {
R.id.about_settings
};
private boolean mEnableUserManagement = false;
// TODO: Update Call Settings based on airplane mode state.
protected HashMap<Integer, Integer> mHeaderIndexMap = new HashMap<Integer, Integer>();
@@ -100,6 +102,11 @@ public class Settings extends PreferenceActivity implements ButtonBarHandler {
getWindow().setUiOptions(0);
}
if (android.provider.Settings.Secure.getInt(getContentResolver(), "multiuser_enabled", -1)
> 0) {
mEnableUserManagement = true;
}
getMetaData();
mInLocalHeaderSwitch = true;
super.onCreate(savedInstanceState);
@@ -351,7 +358,8 @@ public class Settings extends PreferenceActivity implements ButtonBarHandler {
target.remove(header);
}
} else if (id == R.id.user_settings) {
if (!UserId.MU_ENABLED || UserId.myUserId() != 0
if (!mEnableUserManagement
|| !UserId.MU_ENABLED || UserId.myUserId() != 0
|| !getResources().getBoolean(R.bool.enable_user_management)
|| Utils.isMonkeyRunning()) {
target.remove(header);