Make p2p start searching after turning off airplane mode.

In the P2P page, p2p stops searching when airplane mode is turned on, and should start searching when airplane mode is turned off.

Bug: 255249207
Test: make RunSettingsRoboTests ROBOTEST_FILTER=WifiP2pSettingsTest

Signed-off-by: Yu <zhangyu34@xiaomi.com>
Change-Id: I71d5eb6c3d8533417e8ae9ac09e7fac73983644e
This commit is contained in:
Yu
2022-10-24 10:33:56 +08:00
parent 20a3f8f9e8
commit 0aed038b0a
2 changed files with 18 additions and 3 deletions

View File

@@ -630,10 +630,13 @@ public class WifiP2pSettings extends DashboardFragment
} }
private void handleP2pStateChanged() { private void handleP2pStateChanged() {
updateSearchMenu(false);
mThisDevicePreferenceController.setEnabled(mWifiP2pEnabled); mThisDevicePreferenceController.setEnabled(mWifiP2pEnabled);
mPersistentCategoryController.setEnabled(mWifiP2pEnabled); mPersistentCategoryController.setEnabled(mWifiP2pEnabled);
mPeerCategoryController.setEnabled(mWifiP2pEnabled); mPeerCategoryController.setEnabled(mWifiP2pEnabled);
if (mWifiP2pEnabled) {
startSearch();
}
updateSearchMenu(mWifiP2pEnabled);
} }
private void updateSearchMenu(boolean searching) { private void updateSearchMenu(boolean searching) {

View File

@@ -147,7 +147,19 @@ public class WifiP2pSettingsTest {
} }
@Test @Test
public void beSearching_getP2pStateEnabledIntent_shouldBeFalse() { public void beSearching_getP2pStateDisabledIntent_shouldBeFalse() {
final Bundle bundle = new Bundle();
final Intent intent = new Intent(WifiP2pManager.WIFI_P2P_STATE_CHANGED_ACTION);
bundle.putInt(WifiP2pManager.EXTRA_WIFI_STATE, WifiP2pManager.WIFI_P2P_STATE_DISABLED);
intent.putExtras(bundle);
mFragment.mReceiver.onReceive(mContext, intent);
assertThat(mFragment.mWifiP2pSearching).isFalse();
}
@Test
public void beSearching_getP2pStateEnabledIntent_shouldBeTrue() {
final Bundle bundle = new Bundle(); final Bundle bundle = new Bundle();
final Intent intent = new Intent(WifiP2pManager.WIFI_P2P_STATE_CHANGED_ACTION); final Intent intent = new Intent(WifiP2pManager.WIFI_P2P_STATE_CHANGED_ACTION);
bundle.putInt(WifiP2pManager.EXTRA_WIFI_STATE, WifiP2pManager.WIFI_P2P_STATE_ENABLED); bundle.putInt(WifiP2pManager.EXTRA_WIFI_STATE, WifiP2pManager.WIFI_P2P_STATE_ENABLED);
@@ -155,7 +167,7 @@ public class WifiP2pSettingsTest {
mFragment.mReceiver.onReceive(mContext, intent); mFragment.mReceiver.onReceive(mContext, intent);
assertThat(mFragment.mWifiP2pSearching).isFalse(); assertThat(mFragment.mWifiP2pSearching).isTrue();
} }
@Test @Test