diff --git a/res/xml/wifi_network_details_fragment.xml b/res/xml/wifi_network_details_fragment.xml index dbbf0c37708..09bcf863747 100644 --- a/res/xml/wifi_network_details_fragment.xml +++ b/res/xml/wifi_network_details_fragment.xml @@ -34,40 +34,52 @@ + android:title="@string/wifi_signal" + android:selectable="false"/> + android:title="@string/wifi_frequency" + android:selectable="false"/> + android:title="@string/wifi_security" + android:selectable="false"/> - + + android:title="@string/wifi_setup_detail"> + android:title="@string/wifi_ip_address" + android:selectable="false"/> + android:title="@string/wifi_gateway" + android:selectable="false"/> + android:title="@string/wifi_details_subnet_mask" + android:selectable="false"/> + android:title="@string/wifi_details_dns" + android:selectable="false"/> + + android:title="@string/wifi_details_ipv6_address_header" + android:selectable="false"/> diff --git a/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java b/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java index d0e21e9269a..85c0929912f 100644 --- a/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java +++ b/src/com/android/settings/wifi/details/WifiDetailPreferenceController.java @@ -59,6 +59,8 @@ public class WifiDetailPreferenceController extends PreferenceController impleme @VisibleForTesting static final String KEY_SIGNAL_STRENGTH_PREF = "signal_strength"; @VisibleForTesting + static final String KEY_LINK_SPEED = "link_speed"; + @VisibleForTesting static final String KEY_FREQUENCY_PREF = "frequency"; @VisibleForTesting static final String KEY_SECURITY_PREF = "security"; @@ -85,6 +87,7 @@ public class WifiDetailPreferenceController extends PreferenceController impleme // Preferences - in order of appearance private Preference mConnectionDetailPref; private WifiDetailPreference mSignalStrengthPref; + private WifiDetailPreference mLinkSpeedPref; private WifiDetailPreference mFrequencyPref; private WifiDetailPreference mSecurityPref; private WifiDetailPreference mIpAddressPref; @@ -128,6 +131,7 @@ public class WifiDetailPreferenceController extends PreferenceController impleme mSignalStrengthPref = (WifiDetailPreference) screen.findPreference(KEY_SIGNAL_STRENGTH_PREF); + mLinkSpeedPref = (WifiDetailPreference) screen.findPreference(KEY_LINK_SPEED); mFrequencyPref = (WifiDetailPreference) screen.findPreference(KEY_FREQUENCY_PREF); mSecurityPref = (WifiDetailPreference) screen.findPreference(KEY_SECURITY_PREF); @@ -178,6 +182,10 @@ public class WifiDetailPreferenceController extends PreferenceController impleme int summarySignalLevel = mAccessPoint.getLevel(); mSignalStrengthPref.setDetailText(mSignalStr[summarySignalLevel]); + // Link Speed Pref + mLinkSpeedPref.setDetailText(mContext.getString( + R.string.link_speed, mWifiInfo.getLinkSpeed())); + // Frequency Pref final int frequency = mWifiInfo.getFrequency(); String band = null; diff --git a/tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java index 88a63b37f3e..0a12ebfbf47 100644 --- a/tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/wifi/details/WifiDetailPreferenceControllerTest.java @@ -54,6 +54,7 @@ public class WifiDetailPreferenceControllerTest { private static final int LEVEL = 1; private static final int RSSI = -55; + private static final int LINK_SPEED = 123; private static final String SECURITY = "None"; @Mock(answer = Answers.RETURNS_DEEP_STUBS) @@ -67,6 +68,7 @@ public class WifiDetailPreferenceControllerTest { @Mock private Preference mockConnectionDetailPref; @Mock private WifiDetailPreference mockSignalStrengthPref; + @Mock private WifiDetailPreference mockLinkSpeedPref; @Mock private WifiDetailPreference mockFrequencyPref; @Mock private WifiDetailPreference mockSecurityPref; @Mock private WifiDetailPreference mockIpAddressPref; @@ -97,6 +99,7 @@ public class WifiDetailPreferenceControllerTest { setupMockedPreferenceScreen(); when(mockWifiInfo.getRssi()).thenReturn(RSSI); + when(mockWifiInfo.getLinkSpeed()).thenReturn(LINK_SPEED); when(mockWifiManager.getConnectionInfo()).thenReturn(mockWifiInfo); } @@ -106,6 +109,8 @@ public class WifiDetailPreferenceControllerTest { .thenReturn(mockConnectionDetailPref); when(mockScreen.findPreference(WifiDetailPreferenceController.KEY_SIGNAL_STRENGTH_PREF)) .thenReturn(mockSignalStrengthPref); + when(mockScreen.findPreference(WifiDetailPreferenceController.KEY_LINK_SPEED)) + .thenReturn(mockLinkSpeedPref); when(mockScreen.findPreference(WifiDetailPreferenceController.KEY_FREQUENCY_PREF)) .thenReturn(mockFrequencyPref); when(mockScreen.findPreference(WifiDetailPreferenceController.KEY_SECURITY_PREF)) @@ -178,6 +183,15 @@ public class WifiDetailPreferenceControllerTest { verify(mockSignalStrengthPref).setDetailText(expectedStrength); } + @Test + public void linkSpeedPref_shouldHaveDetailTextSet() { + String expectedLinkSpeed = mContext.getString(R.string.link_speed, LINK_SPEED); + + mController.onResume(); + + verify(mockLinkSpeedPref).setDetailText(expectedLinkSpeed); + } + @Test public void forgetNetwork_ephemeral() { WifiConfiguration wifiConfiguration = new WifiConfiguration();