Merge "Show greyed out icon when Wi-Fi network is restricted to configurate" into tm-qpr-dev am: 74a748ece8
am: dd238fd0ad
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19967514 Change-Id: I951c95aa7d5f9385de3776c2b7b5e62ee509b534 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -201,7 +201,8 @@ public class WifiEntryPreference extends Preference implements WifiEntry.WifiEnt
|
|||||||
return accent ? android.R.attr.colorAccent : android.R.attr.colorControlNormal;
|
return accent ? android.R.attr.colorAccent : android.R.attr.colorControlNormal;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateIcon(boolean showX, int level) {
|
@VisibleForTesting
|
||||||
|
void updateIcon(boolean showX, int level) {
|
||||||
if (level == -1) {
|
if (level == -1) {
|
||||||
setIcon(null);
|
setIcon(null);
|
||||||
return;
|
return;
|
||||||
@@ -209,7 +210,9 @@ public class WifiEntryPreference extends Preference implements WifiEntry.WifiEnt
|
|||||||
|
|
||||||
final Drawable drawable = mIconInjector.getIcon(showX, level);
|
final Drawable drawable = mIconInjector.getIcon(showX, level);
|
||||||
if (drawable != null) {
|
if (drawable != null) {
|
||||||
drawable.setTint(Utils.getColorAttrDefaultColor(getContext(), getIconColorAttr()));
|
// Must use Drawable#setTintList() instead of Drawable#setTint() to show the grey
|
||||||
|
// icon when the preference is disabled.
|
||||||
|
drawable.setTintList(Utils.getColorAttr(getContext(), getIconColorAttr()));
|
||||||
setIcon(drawable);
|
setIcon(drawable);
|
||||||
} else {
|
} else {
|
||||||
setIcon(null);
|
setIcon(null);
|
||||||
|
@@ -17,6 +17,8 @@ package com.android.settings.wifi;
|
|||||||
|
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
|
import static org.mockito.ArgumentMatchers.any;
|
||||||
|
import static org.mockito.Mockito.verify;
|
||||||
import static org.mockito.Mockito.when;
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
@@ -252,4 +254,14 @@ public class WifiEntryPreferenceTest {
|
|||||||
|
|
||||||
assertThat(view.findViewById(R.id.icon_button).getVisibility()).isEqualTo(View.GONE);
|
assertThat(view.findViewById(R.id.icon_button).getVisibility()).isEqualTo(View.GONE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void updateIcon_ShouldSetTintListForDrawable() {
|
||||||
|
WifiEntryPreference pref =
|
||||||
|
new WifiEntryPreference(mContext, mMockWifiEntry, mMockIconInjector);
|
||||||
|
|
||||||
|
pref.updateIcon(false /* showX */, 4 /* level */);
|
||||||
|
|
||||||
|
verify(mMockDrawable4).setTintList(any());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user