[Wi-Fi] Can't change EAP method for a saved enterprise Wi-Fi network

Should only allow saved network UI initialization for once.

Bug: 140362368
Test: WifiConfigControllerTest
      manual:
      Manually change EAP method and other security fields for a saved
      Wi-Fi neterprise network.

Change-Id: Iddc1dae53849760f43b41b75262358dff6ba09af
This commit is contained in:
Arc Wang
2019-09-04 18:12:29 +08:00
parent 2cce2150c6
commit 9db4bf7dbb
2 changed files with 24 additions and 1 deletions

View File

@@ -986,7 +986,10 @@ public class WifiConfigController implements TextWatcher,
}
mView.findViewById(R.id.eap).setVisibility(View.VISIBLE);
// TODO (b/140541213): Maybe we can remove initiateEnterpriseNetworkUi by moving code block
boolean initiateEnterpriseNetworkUi = false;
if (mEapMethodSpinner == null) {
initiateEnterpriseNetworkUi = true;
mEapMethodSpinner = (Spinner) mView.findViewById(R.id.method);
mEapMethodSpinner.setOnItemSelectedListener(this);
mPhase2Spinner = (Spinner) mView.findViewById(R.id.phase2);
@@ -1043,7 +1046,7 @@ public class WifiConfigController implements TextWatcher,
}
// Modifying an existing network
if (mAccessPoint != null && mAccessPoint.isSaved()) {
if (initiateEnterpriseNetworkUi && mAccessPoint != null && mAccessPoint.isSaved()) {
WifiEnterpriseConfig enterpriseConfig = mAccessPoint.getConfig().enterpriseConfig;
int eapMethod = enterpriseConfig.getEapMethod();
int phase2Method = enterpriseConfig.getPhase2Method();