Merge "[Wi-Fi] Show Pie+x Wi-Fi icon when a connected Wi-Fi is not default route" into rvc-qpr-dev am: db667a8971
am: 8704114f02
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/12444567 Change-Id: I95ac03dcb6a45fbc8c71aae0d7c9fcae20f36ff2
This commit is contained in:
@@ -165,6 +165,7 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle
|
||||
private NetworkInfo mNetworkInfo;
|
||||
private NetworkCapabilities mNetworkCapabilities;
|
||||
private int mRssiSignalLevel = -1;
|
||||
@VisibleForTesting boolean mShowX; // Shows the Wi-Fi signal icon of Pie+x when it's true.
|
||||
private String[] mSignalStr;
|
||||
private WifiInfo mWifiInfo;
|
||||
private final WifiManager mWifiManager;
|
||||
@@ -554,7 +555,7 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle
|
||||
}
|
||||
|
||||
private void refreshRssiViews() {
|
||||
int signalLevel = mWifiEntry.getLevel();
|
||||
final int signalLevel = mWifiEntry.getLevel();
|
||||
|
||||
// Disappears signal view if not in range. e.g. for saved networks.
|
||||
if (signalLevel == WifiEntry.WIFI_LEVEL_UNREACHABLE) {
|
||||
@@ -563,11 +564,14 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle
|
||||
return;
|
||||
}
|
||||
|
||||
if (mRssiSignalLevel == signalLevel) {
|
||||
final boolean showX = mWifiEntry.shouldShowXLevelIcon();
|
||||
|
||||
if (mRssiSignalLevel == signalLevel && mShowX == showX) {
|
||||
return;
|
||||
}
|
||||
mRssiSignalLevel = signalLevel;
|
||||
Drawable wifiIcon = mIconInjector.getIcon(mRssiSignalLevel);
|
||||
mShowX = showX;
|
||||
Drawable wifiIcon = mIconInjector.getIcon(mShowX, mRssiSignalLevel);
|
||||
|
||||
if (mEntityHeaderController != null) {
|
||||
mEntityHeaderController
|
||||
@@ -1003,8 +1007,8 @@ public class WifiDetailPreferenceController2 extends AbstractPreferenceControlle
|
||||
mContext = context;
|
||||
}
|
||||
|
||||
public Drawable getIcon(int level) {
|
||||
return mContext.getDrawable(Utils.getWifiIconResource(level)).mutate();
|
||||
public Drawable getIcon(boolean showX, int level) {
|
||||
return mContext.getDrawable(Utils.getWifiIconResource(showX, level)).mutate();
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -299,7 +299,7 @@ public class WifiDetailPreferenceController2Test {
|
||||
.thenReturn(mMockHeaderController);
|
||||
when(mMockHeaderController.setSecondSummary(nullable(String.class)))
|
||||
.thenReturn(mMockHeaderController);
|
||||
when(mMockIconInjector.getIcon(anyInt())).thenReturn(new ColorDrawable());
|
||||
when(mMockIconInjector.getIcon(anyBoolean(), anyInt())).thenReturn(new ColorDrawable());
|
||||
|
||||
setupMockedPreferenceScreen();
|
||||
}
|
||||
@@ -500,7 +500,7 @@ public class WifiDetailPreferenceController2Test {
|
||||
public void entityHeader_shouldHaveIconSetForConnectedNetwork() {
|
||||
setUpForConnectedNetwork();
|
||||
setUpSpyController();
|
||||
Drawable expectedIcon = mMockIconInjector.getIcon(LEVEL);
|
||||
Drawable expectedIcon = mMockIconInjector.getIcon(false /* showX */, LEVEL);
|
||||
|
||||
displayAndResume();
|
||||
|
||||
@@ -510,7 +510,7 @@ public class WifiDetailPreferenceController2Test {
|
||||
@Test
|
||||
public void entityHeader_shouldHaveIconSetForDisconnectedNetwork() {
|
||||
setUpForDisconnectedNetwork();
|
||||
Drawable expectedIcon = mMockIconInjector.getIcon(LEVEL);
|
||||
Drawable expectedIcon = mMockIconInjector.getIcon(false /* showX */, LEVEL);
|
||||
|
||||
displayAndResume();
|
||||
|
||||
@@ -615,6 +615,7 @@ public class WifiDetailPreferenceController2Test {
|
||||
|
||||
displayAndResume();
|
||||
|
||||
assertThat(mController.mShowX).isFalse();
|
||||
verify(mMockSignalStrengthPref).setIcon(any(Drawable.class));
|
||||
}
|
||||
|
||||
@@ -624,6 +625,7 @@ public class WifiDetailPreferenceController2Test {
|
||||
|
||||
displayAndResume();
|
||||
|
||||
assertThat(mController.mShowX).isFalse();
|
||||
verify(mMockSignalStrengthPref).setIcon(any(Drawable.class));
|
||||
}
|
||||
|
||||
@@ -633,6 +635,7 @@ public class WifiDetailPreferenceController2Test {
|
||||
|
||||
displayAndResume();
|
||||
|
||||
assertThat(mController.mShowX).isFalse();
|
||||
verify(mMockSignalStrengthPref, never()).setIcon(any(Drawable.class));
|
||||
}
|
||||
|
||||
@@ -645,6 +648,7 @@ public class WifiDetailPreferenceController2Test {
|
||||
|
||||
displayAndResume();
|
||||
|
||||
assertThat(mController.mShowX).isFalse();
|
||||
verify(mMockSignalStrengthPref).setSummary(expectedStrength);
|
||||
}
|
||||
|
||||
@@ -656,6 +660,7 @@ public class WifiDetailPreferenceController2Test {
|
||||
|
||||
displayAndResume();
|
||||
|
||||
assertThat(mController.mShowX).isFalse();
|
||||
verify(mMockSignalStrengthPref).setSummary(expectedStrength);
|
||||
}
|
||||
|
||||
@@ -665,9 +670,24 @@ public class WifiDetailPreferenceController2Test {
|
||||
|
||||
displayAndResume();
|
||||
|
||||
assertThat(mController.mShowX).isFalse();
|
||||
verify(mMockSignalStrengthPref, never()).setSummary(any(String.class));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void signalStrengthPref_shouldShowXLevelIcon_showXTrue() {
|
||||
setUpForConnectedNetwork();
|
||||
setUpSpyController();
|
||||
final String expectedStrength =
|
||||
mContext.getResources().getStringArray(R.array.wifi_signal)[LEVEL];
|
||||
when(mMockWifiEntry.shouldShowXLevelIcon()).thenReturn(true);
|
||||
|
||||
displayAndResume();
|
||||
|
||||
assertThat(mController.mShowX).isTrue();
|
||||
verify(mMockSignalStrengthPref).setSummary(expectedStrength);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void linkSpeedPref_shouldNotShowIfNotSet() {
|
||||
setUpForConnectedNetwork();
|
||||
@@ -1529,7 +1549,7 @@ public class WifiDetailPreferenceController2Test {
|
||||
ArgumentCaptor<BitmapDrawable> drawableCaptor =
|
||||
ArgumentCaptor.forClass(BitmapDrawable.class);
|
||||
Drawable original = mContext.getDrawable(Utils.getWifiIconResource(LEVEL)).mutate();
|
||||
when(mMockIconInjector.getIcon(anyInt())).thenReturn(original);
|
||||
when(mMockIconInjector.getIcon(anyBoolean(), anyInt())).thenReturn(original);
|
||||
|
||||
displayAndResume();
|
||||
|
||||
@@ -1548,7 +1568,7 @@ public class WifiDetailPreferenceController2Test {
|
||||
ArgumentCaptor<BitmapDrawable> drawableCaptor =
|
||||
ArgumentCaptor.forClass(BitmapDrawable.class);
|
||||
Drawable original = mContext.getDrawable(Utils.getWifiIconResource(LEVEL)).mutate();
|
||||
when(mMockIconInjector.getIcon(anyInt())).thenReturn(original);
|
||||
when(mMockIconInjector.getIcon(anyBoolean(), anyInt())).thenReturn(original);
|
||||
|
||||
displayAndResume();
|
||||
|
||||
|
Reference in New Issue
Block a user