Fix USB tether option

* USB tether option will be grayed out before
  USB cable is plugged in.

Bug: 192225597
Test: manual testing
Change-Id: Ibc87416b9aecb03f1ddd3df0d9f11a935f3a290e
This commit is contained in:
Alex Johnston
2021-08-02 14:16:49 +01:00
parent e9200b19ad
commit 685cacb540

View File

@@ -55,6 +55,7 @@ import com.android.settings.core.FeatureFlags;
import com.android.settings.datausage.DataSaverBackend; import com.android.settings.datausage.DataSaverBackend;
import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.wifi.tether.WifiTetherPreferenceController; import com.android.settings.wifi.tether.WifiTetherPreferenceController;
import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.RestrictedSwitchPreference; import com.android.settingslib.RestrictedSwitchPreference;
import com.android.settingslib.TetherUtil; import com.android.settingslib.TetherUtil;
import com.android.settingslib.search.SearchIndexable; import com.android.settingslib.search.SearchIndexable;
@@ -425,14 +426,16 @@ public class TetherSettings extends RestrictedSettingsFragment
private void updateUsbPreference() { private void updateUsbPreference() {
boolean usbAvailable = mUsbConnected && !mMassStorageActive; boolean usbAvailable = mUsbConnected && !mMassStorageActive;
final RestrictedLockUtils.EnforcedAdmin enforcedAdmin =
checkIfUsbDataSignalingIsDisabled(mContext, UserHandle.myUserId());
if (usbAvailable) { if (enforcedAdmin != null) {
mUsbTether.setDisabledByAdmin(enforcedAdmin);
} else if (usbAvailable) {
mUsbTether.setEnabled(!mDataSaverEnabled); mUsbTether.setEnabled(!mDataSaverEnabled);
} else { } else {
mUsbTether.setEnabled(false); mUsbTether.setEnabled(false);
} }
mUsbTether.setDisabledByAdmin(
checkIfUsbDataSignalingIsDisabled(mContext, UserHandle.myUserId()));
} }
@VisibleForTesting @VisibleForTesting