Disable instead of hiding add account preference
Bug: 29236399 Change-Id: Ieb1af7f31a54b1502ae99682fc423e37c86a2353
This commit is contained in:
@@ -316,9 +316,11 @@ public class AccountSettings extends SettingsPreferenceFragment
|
|||||||
if (userInfo.isEnabled()) {
|
if (userInfo.isEnabled()) {
|
||||||
profileData.authenticatorHelper = new AuthenticatorHelper(context,
|
profileData.authenticatorHelper = new AuthenticatorHelper(context,
|
||||||
userInfo.getUserHandle(), this);
|
userInfo.getUserHandle(), this);
|
||||||
if (!RestrictedLockUtils.hasBaseUserRestriction(context,
|
|
||||||
UserManager.DISALLOW_MODIFY_ACCOUNTS, userInfo.id)) {
|
|
||||||
profileData.addAccountPreference = newAddAccountPreference(context);
|
profileData.addAccountPreference = newAddAccountPreference(context);
|
||||||
|
if (RestrictedLockUtils.hasBaseUserRestriction(context,
|
||||||
|
UserManager.DISALLOW_MODIFY_ACCOUNTS, userInfo.id)) {
|
||||||
|
profileData.addAccountPreference.setEnabled(false);
|
||||||
|
} else {
|
||||||
profileData.addAccountPreference.checkRestrictionAndSetDisabled(
|
profileData.addAccountPreference.checkRestrictionAndSetDisabled(
|
||||||
DISALLOW_MODIFY_ACCOUNTS, userInfo.id);
|
DISALLOW_MODIFY_ACCOUNTS, userInfo.id);
|
||||||
}
|
}
|
||||||
|
@@ -267,13 +267,16 @@ public class AccountSyncSettings extends AccountPreferenceBase {
|
|||||||
MenuItem syncCancel = menu.add(0, MENU_SYNC_CANCEL_ID, 0,
|
MenuItem syncCancel = menu.add(0, MENU_SYNC_CANCEL_ID, 0,
|
||||||
getString(R.string.sync_menu_sync_cancel))
|
getString(R.string.sync_menu_sync_cancel))
|
||||||
.setIcon(com.android.internal.R.drawable.ic_menu_close_clear_cancel);
|
.setIcon(com.android.internal.R.drawable.ic_menu_close_clear_cancel);
|
||||||
if (!RestrictedLockUtils.hasBaseUserRestriction(getPrefContext(),
|
|
||||||
UserManager.DISALLOW_MODIFY_ACCOUNTS, mUserHandle.getIdentifier())) {
|
|
||||||
MenuItem removeAccount = menu.add(0, MENU_REMOVE_ACCOUNT_ID, 0,
|
MenuItem removeAccount = menu.add(0, MENU_REMOVE_ACCOUNT_ID, 0,
|
||||||
getString(R.string.remove_account_label))
|
getString(R.string.remove_account_label))
|
||||||
.setIcon(R.drawable.ic_menu_delete);
|
.setIcon(R.drawable.ic_menu_delete);
|
||||||
removeAccount.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER |
|
removeAccount.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER |
|
||||||
MenuItem.SHOW_AS_ACTION_WITH_TEXT);
|
MenuItem.SHOW_AS_ACTION_WITH_TEXT);
|
||||||
|
if (RestrictedLockUtils.hasBaseUserRestriction(getPrefContext(),
|
||||||
|
UserManager.DISALLOW_MODIFY_ACCOUNTS, mUserHandle.getIdentifier())) {
|
||||||
|
removeAccount.setEnabled(false);
|
||||||
|
} else {
|
||||||
EnforcedAdmin admin = RestrictedLockUtils.checkIfRestrictionEnforced(
|
EnforcedAdmin admin = RestrictedLockUtils.checkIfRestrictionEnforced(
|
||||||
getPrefContext(), UserManager.DISALLOW_MODIFY_ACCOUNTS,
|
getPrefContext(), UserManager.DISALLOW_MODIFY_ACCOUNTS,
|
||||||
mUserHandle.getIdentifier());
|
mUserHandle.getIdentifier());
|
||||||
@@ -284,6 +287,7 @@ public class AccountSyncSettings extends AccountPreferenceBase {
|
|||||||
RestrictedLockUtils.setMenuItemAsDisabledByAdmin(getPrefContext(),
|
RestrictedLockUtils.setMenuItemAsDisabledByAdmin(getPrefContext(),
|
||||||
removeAccount, admin);
|
removeAccount, admin);
|
||||||
}
|
}
|
||||||
|
|
||||||
syncNow.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER |
|
syncNow.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER |
|
||||||
MenuItem.SHOW_AS_ACTION_WITH_TEXT);
|
MenuItem.SHOW_AS_ACTION_WITH_TEXT);
|
||||||
syncCancel.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER |
|
syncCancel.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER |
|
||||||
|
Reference in New Issue
Block a user