Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 75e2dc4b authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Avoid disabling the Wi-Fi hotspot switch causing Talkback confusion" into main

parents 37ae0766 259d3a47
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -57,6 +57,9 @@ public class WifiTetherSwitchBarController implements
    private final ConnectivityManager mConnectivityManager;
    private final WifiManager mWifiManager;

    @VisibleForTesting
    boolean mIsSwitchBusy;

    @VisibleForTesting
    DataSaverBackend mDataSaverBackend;
    @VisibleForTesting
@@ -102,8 +105,8 @@ public class WifiTetherSwitchBarController implements

    @Override
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
        // Filter out unnecessary callbacks when switch is disabled.
        if (!buttonView.isEnabled()) return;
        // Filter out inappropriate callbacks when switch is busy.
        if (mIsSwitchBusy) return;

        if (isChecked) {
            startTether();
@@ -115,14 +118,14 @@ public class WifiTetherSwitchBarController implements
    void stopTether() {
        if (!isWifiApActivated()) return;

        mSwitchBar.setEnabled(false);
        mIsSwitchBusy = true;
        mConnectivityManager.stopTethering(TETHERING_WIFI);
    }

    void startTether() {
        if (isWifiApActivated()) return;

        mSwitchBar.setEnabled(false);
        mIsSwitchBusy = true;
        mConnectivityManager.startTethering(TETHERING_WIFI, true /* showProvisioningUi */,
                mOnStartTetheringCallback, new Handler(Looper.getMainLooper()));
    }
@@ -159,6 +162,7 @@ public class WifiTetherSwitchBarController implements

    private void updateWifiSwitch() {
        mSwitchBar.setEnabled(!mDataSaverBackend.isDataSaverEnabled());
        mIsSwitchBusy = false;
    }

    @Override
+2 −2
Original line number Diff line number Diff line
@@ -147,8 +147,8 @@ public class WifiTetherSwitchBarControllerTest {
    }

    @Test
    public void onSwitchChanged_switchNotEnabled_doNothingForTethering() {
        when(mSwitch.isEnabled()).thenReturn(false);
    public void onSwitchChanged_switchIsBusy_doNothingForTethering() {
        mController.mIsSwitchBusy = true;

        mController.onCheckedChanged(mSwitch, true);