diff --git a/src/com/android/settings/wifi/WifiConfigController.java b/src/com/android/settings/wifi/WifiConfigController.java index 8f4c4e9aa53..95f7e9c5919 100644 --- a/src/com/android/settings/wifi/WifiConfigController.java +++ b/src/com/android/settings/wifi/WifiConfigController.java @@ -220,6 +220,7 @@ public class WifiConfigController implements TextWatcher, mMeteredSettingsSpinner = mView.findViewById(R.id.metered_settings); mHiddenSettingsSpinner = mView.findViewById(R.id.hidden_settings); mHiddenSettingsSpinner.setOnItemSelectedListener(this); + mHiddenSettingsSpinner.setVisibility(View.GONE); mHiddenSettingsSpinner.setEnabled(false); mHiddenWarningView = mView.findViewById(R.id.hidden_settings_warning); mHiddenWarningView.setVisibility( @@ -240,6 +241,7 @@ public class WifiConfigController implements TextWatcher, showProxyFields(); mView.findViewById(R.id.wifi_advanced_toggle).setVisibility(View.VISIBLE); // Hidden option can be changed only when the user adds a network manually. + mHiddenSettingsSpinner.setVisibility(View.VISIBLE); mHiddenSettingsSpinner.setEnabled(true); ((CheckBox) mView.findViewById(R.id.wifi_advanced_togglebox)) .setOnCheckedChangeListener(this); diff --git a/tests/robotests/src/com/android/settings/wifi/WifiConfigControllerTest.java b/tests/robotests/src/com/android/settings/wifi/WifiConfigControllerTest.java index d445c0df15f..ddbc851952a 100644 --- a/tests/robotests/src/com/android/settings/wifi/WifiConfigControllerTest.java +++ b/tests/robotests/src/com/android/settings/wifi/WifiConfigControllerTest.java @@ -268,6 +268,19 @@ public class WifiConfigControllerTest { assertThat(hiddenSpinner.isEnabled()).isTrue(); } + + @Test + public void hiddenSpinner_visibilityUpdatesCorrectly() { + View hiddenSpinner = mView.findViewById(R.id.hidden_settings); + assertThat(hiddenSpinner.isEnabled()).isFalse(); + assertThat(hiddenSpinner.getVisibility()).isEqualTo(View.GONE); + + mController = new TestWifiConfigController(mConfigUiBase, mView, null /* accessPoint */, + WifiConfigUiBase.MODE_CONNECT); + assertThat(hiddenSpinner.isEnabled()).isTrue(); + assertThat(hiddenSpinner.getVisibility()).isEqualTo(View.VISIBLE); + } + public class TestWifiConfigController extends WifiConfigController { private TestWifiConfigController(