diff --git a/src/com/android/settings/accounts/AccountSyncSettings.java b/src/com/android/settings/accounts/AccountSyncSettings.java index ed56651b544..8471dbaafad 100644 --- a/src/com/android/settings/accounts/AccountSyncSettings.java +++ b/src/com/android/settings/accounts/AccountSyncSettings.java @@ -270,9 +270,13 @@ public class AccountSyncSettings extends AccountPreferenceBase { .setIcon(R.drawable.ic_menu_delete); removeAccount.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER | MenuItem.SHOW_AS_ACTION_WITH_TEXT); - final EnforcedAdmin admin = RestrictedLockUtils.checkIfRestrictionEnforced( + EnforcedAdmin admin = RestrictedLockUtils.checkIfRestrictionEnforced( getPrefContext(), UserManager.DISALLOW_MODIFY_ACCOUNTS, mUserHandle.getIdentifier()); + if (admin == null) { + admin = RestrictedLockUtils.checkIfAccountManagementDisabled( + getPrefContext(), mAccount.type); + } RestrictedLockUtils.setMenuItemAsDisabledByAdmin(getPrefContext(), removeAccount, admin); syncNow.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER | diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java index 67f1c43fe43..2336899ea31 100644 --- a/src/com/android/settings/wifi/WifiSettings.java +++ b/src/com/android/settings/wifi/WifiSettings.java @@ -158,6 +158,8 @@ public class WifiSettings extends RestrictedSettingsFragment private AccessPointPreference.UserBadgeCache mUserBadgeCache; private Preference mAddPreference; + private MenuItem mScanMenuItem; + /* End of "used in Wifi Setup context" */ public WifiSettings() { @@ -324,6 +326,7 @@ public class WifiSettings extends RestrictedSettingsFragment } mWifiTracker.startTracking(); + activity.invalidateOptionsMenu(); } @Override @@ -350,8 +353,8 @@ public class WifiSettings extends RestrictedSettingsFragment */ void addOptionsMenuItems(Menu menu) { final boolean wifiIsEnabled = mWifiTracker.isWifiEnabled(); - menu.add(Menu.NONE, MENU_ID_SCAN, 0, R.string.menu_stats_refresh) - .setEnabled(wifiIsEnabled) + mScanMenuItem = menu.add(Menu.NONE, MENU_ID_SCAN, 0, R.string.menu_stats_refresh); + mScanMenuItem.setEnabled(wifiIsEnabled) .setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER); menu.add(Menu.NONE, MENU_ID_ADVANCED, 0, R.string.wifi_menu_advanced) .setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER); @@ -689,6 +692,9 @@ public class WifiSettings extends RestrictedSettingsFragment getPreferenceScreen().addPreference(mAddPreference); setProgressBarVisible(false); } + if (mScanMenuItem != null) { + mScanMenuItem.setEnabled(true); + } break; case WifiManager.WIFI_STATE_ENABLING: @@ -704,6 +710,9 @@ public class WifiSettings extends RestrictedSettingsFragment case WifiManager.WIFI_STATE_DISABLED: setOffMessage(); setProgressBarVisible(false); + if (mScanMenuItem != null) { + mScanMenuItem.setEnabled(false); + } break; } }