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

Commit e5d187c2 authored by Nikhil Nayunigari's avatar Nikhil Nayunigari
Browse files

UI polishes for Ethernet Settings

Modifies the UI to be more inline with the UX mocks.

Flag: com.android.settings.connectivity.ethernet_settings

Test: Manual testing on a Pixel tablet
Change-Id: I6d423d7a4fa5032dba9e76424569e27af5ebf210
parent b18aaa49
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -29,7 +29,8 @@
        android:icon="@drawable/ic_attach_money_black_24dp"
        android:title="@string/wifi_metered_title"
        android:entries="@array/wifi_metered_entries"
        android:entryValues="@array/wifi_metered_values"/>
        android:entryValues="@array/wifi_metered_values"
        android:defaultValue="0"/>

   <!-- Network Details -->
   <PreferenceCategory
@@ -39,6 +40,16 @@
               android:title="@string/ethernet_ip_address"
               android:selectable="false"
               settings:enableCopying="true"/>
        <Preference
               android:key="ethernet_gateway"
               android:title="Gateway"
               android:selectable="false"
               settings:enableCopying="true"/>
       <Preference
               android:key="ethernet_dns"
               android:title="DNS"
               android:selectable="false"
               settings:enableCopying="true"/>
       <Preference
               android:key="ethernet_mac_address"
               android:title="@string/ethernet_mac_address_title"
+7 −9
Original line number Diff line number Diff line
@@ -36,7 +36,8 @@
        android:layout="@layout/airplane_mode_message_preference"
        settings:allowDividerBelow="true"/>

    <com.android.settingslib.widget.SettingsTitlelessPreferenceCategory>
    <com.android.settingslib.widget.SettingsTitlelessPreferenceCategory
        android:key="ethernet_interfaces">
        <com.android.settingslib.RestrictedSwitchPreference
            android:key="main_toggle_ethernet"
            android:title="@string/ethernet"
@@ -44,9 +45,6 @@
            settings:allowDividerAbove="true"/>
    </com.android.settingslib.widget.SettingsTitlelessPreferenceCategory>

    <com.android.settingslib.widget.SettingsTitlelessPreferenceCategory
        android:key="ethernet_interfaces"/>

    <com.android.settingslib.widget.SettingsTitlelessPreferenceCategory>
      <Preference
          android:key="connected_ethernet_network"
+8 −1
Original line number Diff line number Diff line
@@ -77,6 +77,7 @@ import com.android.settings.network.ethernet.EthernetSwitchPreferenceController;
import com.android.settings.network.ethernet.EthernetTracker;
import com.android.settings.network.ethernet.EthernetTrackerImpl;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.widget.GearPreference;
import com.android.settings.wifi.AddNetworkFragment;
import com.android.settings.wifi.AddWifiNetworkPreference;
import com.android.settings.wifi.ConfigureWifiEntryFragment;
@@ -1107,13 +1108,16 @@ public class NetworkProviderSettings extends RestrictedDashboardFragment
        setAdditionalSettingsSummaries();
    }

    @SuppressWarnings("NullAway")
    void updateEthernetInterfaces(Collection<EthernetInterface> interfaces) {
        int index = 0;
        mEthernetPreferenceCategory.removeAll();
        mEthernetPreferenceCategory.addPreference(mEthernetSwitchPreference);
        if (interfaces.size() > 0) {
            for (EthernetInterface ethernetInterface : interfaces) {
                Preference pref = new Preference(getPrefContext());
                GearPreference pref = new GearPreference(getPrefContext(), null /* AttributeSet */);
                pref.setOrder(index++);
                pref.setIcon(getContext().getDrawable(R.drawable.ic_settings_ethernet));
                pref.setKey(ethernetInterface.getId());
                pref.setTitle(getContext().getString(R.string.ethernet_interface_title, index));
                pref.setSummary(
@@ -1124,6 +1128,9 @@ public class NetworkProviderSettings extends RestrictedDashboardFragment
                    launchEthernetInterfaceDetailsFragment(preference);
                    return true;
                });
                pref.setOnGearClickListener(preference -> {
                    launchEthernetInterfaceDetailsFragment(preference);
                });
                mEthernetPreferenceCategory.addPreference(pref);
            }
            mEthernetPreferenceCategory.setVisible(true);
+7 −7
Original line number Diff line number Diff line
@@ -933,11 +933,11 @@ public class NetworkProviderSettingsTest {

        verify(mEthernetPreferenceCategory).removeAll();
        verify(mEthernetPreferenceCategory).setVisible(true);
        verify(mEthernetPreferenceCategory).addPreference(arg.capture());
        verify(mEthernetPreferenceCategory, times(2)).addPreference(arg.capture());

        Preference pref = arg.getValue();
        assertThat(pref.getKey()).isEqualTo("eth0");
        assertThat(pref.getSummary()).isEqualTo("Connected");
        List<Preference> prefs = arg.getAllValues();
        assertThat(prefs.get(1).getKey()).isEqualTo("eth0");
        assertThat(prefs.get(1).getSummary()).isEqualTo("Connected");
    }

    @Test
@@ -953,10 +953,10 @@ public class NetworkProviderSettingsTest {

        ArgumentCaptor<Preference> arg = ArgumentCaptor.forClass(Preference.class);

        verify(mEthernetPreferenceCategory).addPreference(arg.capture());
        verify(mEthernetPreferenceCategory, times(2)).addPreference(arg.capture());

        Preference pref = arg.getValue();
        assertThat(pref.getSummary()).isEqualTo("Disconnected");
        List<Preference> prefs = arg.getAllValues();
        assertThat(prefs.get(1).getSummary()).isEqualTo("Disconnected");
    }

    @Implements(PreferenceFragmentCompat.class)