Remove restricted icon in SettingsMainSwitchBar

- display disable status directly
- click disabled MainSwitchBar will show devicepolicy dialog
- make sure BT and location use MainSwitchBar correctly

Bug: 260406688
Test: manual
Change-Id: I8bb57213eec6dd5e991af580e1a06ebf8a867c28
This commit is contained in:
Edgar Wang
2023-04-06 18:00:30 +08:00
parent ccd03c9e70
commit cd74f76a43
5 changed files with 94 additions and 26 deletions

View File

@@ -15,6 +15,7 @@ package com.android.settings.location;
import android.content.Context;
import android.os.UserHandle;
import android.os.UserManager;
import android.widget.Switch;
import com.android.settings.widget.SettingsMainSwitchBar;
@@ -75,8 +76,12 @@ public class LocationSwitchBarController implements OnMainSwitchChangeListener,
// only, it would be re-enabled again if the switch bar is not disabled.
if (!hasBaseUserRestriction && admin != null) {
mSwitchBar.setDisabledByAdmin(admin);
} else if (restricted) {
RestrictedLockUtils.EnforcedAdmin enforcedAdmin = RestrictedLockUtils.EnforcedAdmin
.createDefaultEnforcedAdminWithRestriction(UserManager.DISALLOW_SHARE_LOCATION);
mSwitchBar.setDisabledByAdmin(enforcedAdmin);
} else {
mSwitchBar.setEnabled(!restricted);
mSwitchBar.setEnabled(true);
}
if (enabled != mSwitchBar.isChecked()) {