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
This commit is contained in:
Salvador Martinez
2018-05-07 14:46:56 -07:00
parent 99902e1faf
commit d86cbe36b0
2 changed files with 15 additions and 0 deletions

View File

@@ -220,6 +220,7 @@ public class WifiConfigController implements TextWatcher,
mMeteredSettingsSpinner = mView.findViewById(R.id.metered_settings); mMeteredSettingsSpinner = mView.findViewById(R.id.metered_settings);
mHiddenSettingsSpinner = mView.findViewById(R.id.hidden_settings); mHiddenSettingsSpinner = mView.findViewById(R.id.hidden_settings);
mHiddenSettingsSpinner.setOnItemSelectedListener(this); mHiddenSettingsSpinner.setOnItemSelectedListener(this);
mHiddenSettingsSpinner.setVisibility(View.GONE);
mHiddenSettingsSpinner.setEnabled(false); mHiddenSettingsSpinner.setEnabled(false);
mHiddenWarningView = mView.findViewById(R.id.hidden_settings_warning); mHiddenWarningView = mView.findViewById(R.id.hidden_settings_warning);
mHiddenWarningView.setVisibility( mHiddenWarningView.setVisibility(
@@ -240,6 +241,7 @@ public class WifiConfigController implements TextWatcher,
showProxyFields(); showProxyFields();
mView.findViewById(R.id.wifi_advanced_toggle).setVisibility(View.VISIBLE); mView.findViewById(R.id.wifi_advanced_toggle).setVisibility(View.VISIBLE);
// Hidden option can be changed only when the user adds a network manually. // Hidden option can be changed only when the user adds a network manually.
mHiddenSettingsSpinner.setVisibility(View.VISIBLE);
mHiddenSettingsSpinner.setEnabled(true); mHiddenSettingsSpinner.setEnabled(true);
((CheckBox) mView.findViewById(R.id.wifi_advanced_togglebox)) ((CheckBox) mView.findViewById(R.id.wifi_advanced_togglebox))
.setOnCheckedChangeListener(this); .setOnCheckedChangeListener(this);

View File

@@ -268,6 +268,19 @@ public class WifiConfigControllerTest {
assertThat(hiddenSpinner.isEnabled()).isTrue(); 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 { public class TestWifiConfigController extends WifiConfigController {
private TestWifiConfigController( private TestWifiConfigController(