[Provider Model] Reduce WiFi list in airplane mode (QS Internet Dialog)
- Usually Carrier Network does not appear in airplane mode is turned on, but it is an exception if it is connected to carrier WiFi(W+). - In the above case, one of the WiFi lists needs to be reduced. - See b/207741548#comment3 for a screenshot. Bug: 207741548 Test: manual test atest -c InternetDialogControllerTest Change-Id: I056b085baba03945543237783733188de689f7b8
This commit is contained in:
@@ -888,7 +888,7 @@ public class InternetDialogController implements AccessPointController.AccessPoi
|
||||
if (mHasEthernet) {
|
||||
count -= 1;
|
||||
}
|
||||
if (hasActiveSubId()) {
|
||||
if (hasActiveSubId() || isCarrierNetworkActive()) {
|
||||
count -= 1;
|
||||
}
|
||||
if (count > accessPoints.size()) {
|
||||
|
||||
@@ -530,6 +530,36 @@ public class InternetDialogControllerTest extends SysuiTestCase {
|
||||
verify(mInternetDialogCallback).onAccessPointsChanged(mWifiEntries, mConnectedEntry);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onAccessPointsChanged_oneCarrierWifiAndFourOthers_callbackCutMore() {
|
||||
reset(mInternetDialogCallback);
|
||||
fakeAirplaneModeEnabled(true);
|
||||
when(mMergedCarrierEntry.isDefaultNetwork()).thenReturn(true);
|
||||
mAccessPoints.clear();
|
||||
mAccessPoints.add(mWifiEntry1);
|
||||
mAccessPoints.add(mWifiEntry2);
|
||||
mAccessPoints.add(mWifiEntry3);
|
||||
mAccessPoints.add(mWifiEntry4);
|
||||
|
||||
mInternetDialogController.onAccessPointsChanged(mAccessPoints);
|
||||
|
||||
mWifiEntries.clear();
|
||||
mWifiEntries.add(mWifiEntry1);
|
||||
mWifiEntries.add(mWifiEntry2);
|
||||
mWifiEntries.add(mWifiEntry3);
|
||||
verify(mInternetDialogCallback)
|
||||
.onAccessPointsChanged(mWifiEntries, null /* connectedEntry */);
|
||||
|
||||
// Turn off airplane mode to has carrier WiFi, then Wi-Fi entries will keep the same.
|
||||
reset(mInternetDialogCallback);
|
||||
fakeAirplaneModeEnabled(false);
|
||||
|
||||
mInternetDialogController.onAccessPointsChanged(mAccessPoints);
|
||||
|
||||
verify(mInternetDialogCallback)
|
||||
.onAccessPointsChanged(mWifiEntries, null /* connectedEntry */);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onAccessPointsChanged_fourWifiEntries_callbackCutMore() {
|
||||
reset(mInternetDialogCallback);
|
||||
|
||||
Reference in New Issue
Block a user