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

Commit 0f47465a authored by Amith Yamasani's avatar Amith Yamasani
Browse files

Fix a bug in disabling wifi tethering on a wifi-only device.

Bug: 5116955
Change-Id: I924915efbd46f918bd94c124f10389912fddf41a
parent 9ca0ef57
Loading
Loading
Loading
Loading
+11 −8
Original line number Diff line number Diff line
@@ -56,7 +56,6 @@ public class TetherSettings extends SettingsPreferenceFragment

    private static final String USB_TETHER_SETTINGS = "usb_tether_settings";
    private static final String ENABLE_WIFI_AP = "enable_wifi_ap";
    private static final String WIFI_AP_SETTINGS = "wifi_ap_settings";
    private static final String ENABLE_BLUETOOTH_TETHERING = "enable_bluetooth_tethering";
    private static final String TETHERING_HELP = "tethering_help";
    private static final String USB_HELP_MODIFIER = "usb_";
@@ -115,7 +114,7 @@ public class TetherSettings extends SettingsPreferenceFragment

        CheckBoxPreference enableWifiAp =
                (CheckBoxPreference) findPreference(ENABLE_WIFI_AP);
        Preference wifiApSettings = findPreference(WIFI_AP_SETTINGS);
        Preference wifiApSettings = findPreference(WIFI_AP_SSID_AND_SECURITY);
        mUsbTether = (CheckBoxPreference) findPreference(USB_TETHER_SETTINGS);
        mBluetoothTether = (CheckBoxPreference) findPreference(ENABLE_BLUETOOTH_TETHERING);
        mTetherHelp = (PreferenceScreen) findPreference(TETHERING_HELP);
@@ -135,7 +134,10 @@ public class TetherSettings extends SettingsPreferenceFragment
            getPreferenceScreen().removePreference(mUsbTether);
        }

        if (!wifiAvailable) {
        if (wifiAvailable) {
            mWifiApEnabler = new WifiApEnabler(activity, enableWifiAp);
            initWifiTethering();
        } else {
            getPreferenceScreen().removePreference(enableWifiAp);
            getPreferenceScreen().removePreference(wifiApSettings);
        }
@@ -150,10 +152,7 @@ public class TetherSettings extends SettingsPreferenceFragment
            }
        }

        mWifiApEnabler = new WifiApEnabler(activity, enableWifiAp);
        mView = new WebView(activity);

        initWifiTethering();
    }

    private void initWifiTethering() {
@@ -315,7 +314,9 @@ public class TetherSettings extends SettingsPreferenceFragment
        activity.registerReceiver(mTetherChangeReceiver, filter);

        if (intent != null) mTetherChangeReceiver.onReceive(activity, intent);
        if (mWifiApEnabler != null) {
            mWifiApEnabler.resume();
        }

        updateState();
    }
@@ -325,8 +326,10 @@ public class TetherSettings extends SettingsPreferenceFragment
        super.onStop();
        getActivity().unregisterReceiver(mTetherChangeReceiver);
        mTetherChangeReceiver = null;
        if (mWifiApEnabler != null) {
            mWifiApEnabler.pause();
        }
    }

    private void updateState() {
        ConnectivityManager cm =