Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9555afb6 authored by Daichi Ueura's avatar Daichi Ueura Committed by Salvador Martinez
Browse files

Hide entire hidden field for non-hidden networks

This CL hides not just hidden network spinner but entire
hidden field when a user is adding a network from scanned
network list.

Test: robotests
Bug: 80114851
Change-Id: I8b29fd764d62af1e46beaa7d26fae97848f4efe6
parent 842ea91b
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -604,6 +604,7 @@
            <LinearLayout android:id="@+id/hidden_settings_field"
                          android:layout_width="match_parent"
                          android:layout_height="wrap_content"
                          android:visibility="gone"
                          style="@style/wifi_item">

                <TextView android:id="@+id/hidden_settings_title"
+1 −4
Original line number Diff line number Diff line
@@ -220,8 +220,6 @@ 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(
                mHiddenSettingsSpinner.getSelectedItemPosition() == NOT_HIDDEN_NETWORK
@@ -241,8 +239,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);
            mView.findViewById(R.id.hidden_settings_field).setVisibility(View.VISIBLE);
            ((CheckBox) mView.findViewById(R.id.wifi_advanced_togglebox))
                    .setOnCheckedChangeListener(this);

+4 −17
Original line number Diff line number Diff line
@@ -259,26 +259,13 @@ public class WifiConfigControllerTest {
    }

    @Test
    public void hiddenView_isDisabledWhenAppropriate() {
        View hiddenSpinner = mView.findViewById(R.id.hidden_settings);
        assertThat(hiddenSpinner.isEnabled()).isFalse();
    public void hiddenField_visibilityUpdatesCorrectly() {
        View hiddenField = mView.findViewById(R.id.hidden_settings_field);
        assertThat(hiddenField.getVisibility()).isEqualTo(View.GONE);

        mController = new TestWifiConfigController(mConfigUiBase, mView, null /* accessPoint */,
                WifiConfigUiBase.MODE_CONNECT);
        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);
        assertThat(hiddenField.getVisibility()).isEqualTo(View.VISIBLE);
    }

    public class TestWifiConfigController extends WifiConfigController {