Fix a bug in disabling wifi tethering on a wifi-only device.
Bug: 5116955 Change-Id: I924915efbd46f918bd94c124f10389912fddf41a
This commit is contained in:
@@ -56,7 +56,6 @@ public class TetherSettings extends SettingsPreferenceFragment
|
|||||||
|
|
||||||
private static final String USB_TETHER_SETTINGS = "usb_tether_settings";
|
private static final String USB_TETHER_SETTINGS = "usb_tether_settings";
|
||||||
private static final String ENABLE_WIFI_AP = "enable_wifi_ap";
|
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 ENABLE_BLUETOOTH_TETHERING = "enable_bluetooth_tethering";
|
||||||
private static final String TETHERING_HELP = "tethering_help";
|
private static final String TETHERING_HELP = "tethering_help";
|
||||||
private static final String USB_HELP_MODIFIER = "usb_";
|
private static final String USB_HELP_MODIFIER = "usb_";
|
||||||
@@ -115,7 +114,7 @@ public class TetherSettings extends SettingsPreferenceFragment
|
|||||||
|
|
||||||
CheckBoxPreference enableWifiAp =
|
CheckBoxPreference enableWifiAp =
|
||||||
(CheckBoxPreference) findPreference(ENABLE_WIFI_AP);
|
(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);
|
mUsbTether = (CheckBoxPreference) findPreference(USB_TETHER_SETTINGS);
|
||||||
mBluetoothTether = (CheckBoxPreference) findPreference(ENABLE_BLUETOOTH_TETHERING);
|
mBluetoothTether = (CheckBoxPreference) findPreference(ENABLE_BLUETOOTH_TETHERING);
|
||||||
mTetherHelp = (PreferenceScreen) findPreference(TETHERING_HELP);
|
mTetherHelp = (PreferenceScreen) findPreference(TETHERING_HELP);
|
||||||
@@ -135,7 +134,10 @@ public class TetherSettings extends SettingsPreferenceFragment
|
|||||||
getPreferenceScreen().removePreference(mUsbTether);
|
getPreferenceScreen().removePreference(mUsbTether);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!wifiAvailable) {
|
if (wifiAvailable) {
|
||||||
|
mWifiApEnabler = new WifiApEnabler(activity, enableWifiAp);
|
||||||
|
initWifiTethering();
|
||||||
|
} else {
|
||||||
getPreferenceScreen().removePreference(enableWifiAp);
|
getPreferenceScreen().removePreference(enableWifiAp);
|
||||||
getPreferenceScreen().removePreference(wifiApSettings);
|
getPreferenceScreen().removePreference(wifiApSettings);
|
||||||
}
|
}
|
||||||
@@ -150,10 +152,7 @@ public class TetherSettings extends SettingsPreferenceFragment
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
mWifiApEnabler = new WifiApEnabler(activity, enableWifiAp);
|
|
||||||
mView = new WebView(activity);
|
mView = new WebView(activity);
|
||||||
|
|
||||||
initWifiTethering();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initWifiTethering() {
|
private void initWifiTethering() {
|
||||||
@@ -315,7 +314,9 @@ public class TetherSettings extends SettingsPreferenceFragment
|
|||||||
activity.registerReceiver(mTetherChangeReceiver, filter);
|
activity.registerReceiver(mTetherChangeReceiver, filter);
|
||||||
|
|
||||||
if (intent != null) mTetherChangeReceiver.onReceive(activity, intent);
|
if (intent != null) mTetherChangeReceiver.onReceive(activity, intent);
|
||||||
mWifiApEnabler.resume();
|
if (mWifiApEnabler != null) {
|
||||||
|
mWifiApEnabler.resume();
|
||||||
|
}
|
||||||
|
|
||||||
updateState();
|
updateState();
|
||||||
}
|
}
|
||||||
@@ -325,7 +326,9 @@ public class TetherSettings extends SettingsPreferenceFragment
|
|||||||
super.onStop();
|
super.onStop();
|
||||||
getActivity().unregisterReceiver(mTetherChangeReceiver);
|
getActivity().unregisterReceiver(mTetherChangeReceiver);
|
||||||
mTetherChangeReceiver = null;
|
mTetherChangeReceiver = null;
|
||||||
mWifiApEnabler.pause();
|
if (mWifiApEnabler != null) {
|
||||||
|
mWifiApEnabler.pause();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateState() {
|
private void updateState() {
|
||||||
|
Reference in New Issue
Block a user