From d86cbe36b06417c7ca6b4df8380c6d93317a75c3 Mon Sep 17 00:00:00 2001 From: Salvador Martinez Date: Mon, 7 May 2018 14:46:56 -0700 Subject: [PATCH] Hide hidden network spinner for non-hidden networks We only want to show this when a user is manually adding a network. This CL hides it when the user is adding a network from the detected wifi list. Test: robotests Bug: 78436456 Change-Id: I81d738267d4cb21d6b7722ec619faaf8ef1fc965 --- .../android/settings/wifi/WifiConfigController.java | 2 ++ .../settings/wifi/WifiConfigControllerTest.java | 13 +++++++++++++ 2 files changed, 15 insertions(+) diff --git a/src/com/android/settings/wifi/WifiConfigController.java b/src/com/android/settings/wifi/WifiConfigController.java index e995c31efc3..79196f16d45 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(