Merge "Show "Disconnect" on forget button for ephemeral network"
This commit is contained in:
@@ -11032,4 +11032,7 @@
|
|||||||
<string name="automatic_system_heap_dump_title">Automatically capture system heap dumps</string>
|
<string name="automatic_system_heap_dump_title">Automatically capture system heap dumps</string>
|
||||||
<!-- Summary of toggle for whether to enable automatic heap dumps for the system server or not. [CHAR LIMIT=NONE] -->
|
<!-- Summary of toggle for whether to enable automatic heap dumps for the system server or not. [CHAR LIMIT=NONE] -->
|
||||||
<string name="automatic_system_heap_dump_summary">Automatically capture a heap dump for Android System when it uses too much memory</string>
|
<string name="automatic_system_heap_dump_summary">Automatically capture a heap dump for Android System when it uses too much memory</string>
|
||||||
|
|
||||||
|
<!-- Button label to disconnect a Wi-Fi network. [CHAR LIMIT=40] -->
|
||||||
|
<string name="wifi_disconnect_button_text">Disconnect</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
@@ -160,6 +160,7 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
|
|||||||
private final WifiTracker mWifiTracker;
|
private final WifiTracker mWifiTracker;
|
||||||
private final MetricsFeatureProvider mMetricsFeatureProvider;
|
private final MetricsFeatureProvider mMetricsFeatureProvider;
|
||||||
private boolean mIsOutOfRange;
|
private boolean mIsOutOfRange;
|
||||||
|
private boolean mIsEphemeral;
|
||||||
private boolean mConnected;
|
private boolean mConnected;
|
||||||
private int mConnectingState;
|
private int mConnectingState;
|
||||||
private WifiManager.ActionListener mConnectListener;
|
private WifiManager.ActionListener mConnectListener;
|
||||||
@@ -251,12 +252,14 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onLost(Network network) {
|
public void onLost(Network network) {
|
||||||
// If support detail page for saved network, should update as disconnect but not exit.
|
final boolean lostCurrentNetwork = network.equals(mNetwork);
|
||||||
if (SavedAccessPointsWifiSettings.usingDetailsFragment(mContext)) {
|
if (lostCurrentNetwork) {
|
||||||
|
// If support detail page for saved network, should update as disconnect but not
|
||||||
|
// exit. Except for ephemeral network which should not show on saved network list.
|
||||||
|
if (SavedAccessPointsWifiSettings.usingDetailsFragment(mContext) && !mIsEphemeral) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (network.equals(mNetwork)) {
|
|
||||||
exitActivity();
|
exitActivity();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -350,6 +353,9 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
|
|||||||
mWifiTracker = null;
|
mWifiTracker = null;
|
||||||
}
|
}
|
||||||
mConnected = mAccessPoint.isActive();
|
mConnected = mAccessPoint.isActive();
|
||||||
|
// When lost the network connection, WifiInfo/NetworkInfo will be clear. So causes we
|
||||||
|
// could not check if the AccessPoint is ephemeral. Need to cache it in first.
|
||||||
|
mIsEphemeral = mAccessPoint.isEphemeral();
|
||||||
mConnectingState = STATE_NONE;
|
mConnectingState = STATE_NONE;
|
||||||
mConnectListener = new WifiManager.ActionListener() {
|
mConnectListener = new WifiManager.ActionListener() {
|
||||||
@Override
|
@Override
|
||||||
@@ -703,6 +709,10 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void refreshButtons() {
|
private void refreshButtons() {
|
||||||
|
// Ephemeral network won't be removed permanently, but be putted in blacklist.
|
||||||
|
mButtonsPref.setButton1Text(
|
||||||
|
mIsEphemeral ? R.string.wifi_disconnect_button_text : R.string.forget);
|
||||||
|
|
||||||
mButtonsPref.setButton1Visible(canForgetNetwork());
|
mButtonsPref.setButton1Visible(canForgetNetwork());
|
||||||
mButtonsPref.setButton2Visible(canSignIntoNetwork());
|
mButtonsPref.setButton2Visible(canSignIntoNetwork());
|
||||||
mButtonsPref.setButton3Visible(canConnectNetwork());
|
mButtonsPref.setButton3Visible(canConnectNetwork());
|
||||||
|
Reference in New Issue
Block a user