sys user split: first pass updating Settings
Update various places in Settings to use "admin" ueser flag instead of checking user id "0". This should be no-op in single user mode since the only admin user would be user 0. In split system user mode, this will correctly ACL admin user instead of non-interactive system user. Bug: 19913735 Change-Id: Ida4d59c5f689ea0dc34b3b3ff0822b087fa0afd6
This commit is contained in:
@@ -439,13 +439,6 @@ public class SettingsActivity extends Activity
|
||||
int titleRes = pref.getTitleRes();
|
||||
if (pref.getFragment().equals(WallpaperTypeSettings.class.getName())) {
|
||||
titleRes = R.string.wallpaper_settings_fragment_title;
|
||||
} else if (pref.getFragment().equals(OwnerInfoSettings.class.getName())
|
||||
&& UserHandle.myUserId() != UserHandle.USER_OWNER) {
|
||||
if (UserManager.get(this).isLinkedUser()) {
|
||||
titleRes = R.string.profile_info_settings_title;
|
||||
} else {
|
||||
titleRes = R.string.user_info_settings_title;
|
||||
}
|
||||
}
|
||||
startPreferencePanel(pref.getFragment(), pref.getExtras(), titleRes, pref.getTitle(),
|
||||
null, 0);
|
||||
@@ -1219,7 +1212,8 @@ public class SettingsActivity extends Activity
|
||||
DevelopmentSettings.PREF_SHOW,
|
||||
android.os.Build.TYPE.equals("eng"));
|
||||
|
||||
final UserManager um = (UserManager) getSystemService(Context.USER_SERVICE);
|
||||
final UserManager um = UserManager.get(this);
|
||||
final boolean isAdmin = um.isAdminUser();
|
||||
|
||||
final int size = target.size();
|
||||
for (int i = 0; i < size; i++) {
|
||||
@@ -1264,9 +1258,6 @@ public class SettingsActivity extends Activity
|
||||
removeTile = true;
|
||||
}
|
||||
} else if (id == R.id.user_settings) {
|
||||
boolean hasMultipleUsers =
|
||||
((UserManager) getSystemService(Context.USER_SERVICE))
|
||||
.getUserCount() > 1;
|
||||
if (!UserHandle.MU_ENABLED
|
||||
|| !UserManager.supportsMultipleUsers()
|
||||
|| Utils.isMonkeyRunning()) {
|
||||
@@ -1297,7 +1288,7 @@ public class SettingsActivity extends Activity
|
||||
}
|
||||
}
|
||||
|
||||
if (UserHandle.MU_ENABLED && UserHandle.myUserId() != 0
|
||||
if (UserHandle.MU_ENABLED && !isAdmin
|
||||
&& !ArrayUtils.contains(SETTINGS_FOR_RESTRICTED, id)) {
|
||||
removeTile = true;
|
||||
}
|
||||
|
Reference in New Issue
Block a user