Merge "[Injection] Stop using the component icon as a fallback option" into sc-dev

This commit is contained in:
Jason Chiu
2021-05-26 07:11:05 +00:00
committed by Android (Google) Code Review
3 changed files with 6 additions and 16 deletions

View File

@@ -19,7 +19,6 @@ package com.android.settingslib.drawer;
import static com.android.settingslib.drawer.TileUtils.META_DATA_KEY_ORDER; import static com.android.settingslib.drawer.TileUtils.META_DATA_KEY_ORDER;
import static com.android.settingslib.drawer.TileUtils.META_DATA_KEY_PROFILE; import static com.android.settingslib.drawer.TileUtils.META_DATA_KEY_PROFILE;
import static com.android.settingslib.drawer.TileUtils.META_DATA_PREFERENCE_ICON; import static com.android.settingslib.drawer.TileUtils.META_DATA_PREFERENCE_ICON;
import static com.android.settingslib.drawer.TileUtils.META_DATA_PREFERENCE_ICON_URI;
import static com.android.settingslib.drawer.TileUtils.META_DATA_PREFERENCE_KEYHINT; import static com.android.settingslib.drawer.TileUtils.META_DATA_PREFERENCE_KEYHINT;
import static com.android.settingslib.drawer.TileUtils.META_DATA_PREFERENCE_SUMMARY; import static com.android.settingslib.drawer.TileUtils.META_DATA_PREFERENCE_SUMMARY;
import static com.android.settingslib.drawer.TileUtils.META_DATA_PREFERENCE_SUMMARY_URI; import static com.android.settingslib.drawer.TileUtils.META_DATA_PREFERENCE_SUMMARY_URI;
@@ -301,16 +300,8 @@ public abstract class Tile implements Parcelable {
} }
int iconResId = mMetaData.getInt(META_DATA_PREFERENCE_ICON); int iconResId = mMetaData.getInt(META_DATA_PREFERENCE_ICON);
// Set the icon // Set the icon. Skip the transparent color for backward compatibility since Android S.
if (iconResId == 0) { if (iconResId != 0 && iconResId != android.R.color.transparent) {
// Only fallback to componentInfo.icon if metadata does not contain ICON_URI.
// ICON_URI should be loaded in app UI when need the icon object. Handling IPC at this
// level is too complex because we don't have a strong threading contract for this class
if (!mMetaData.containsKey(META_DATA_PREFERENCE_ICON_URI)) {
iconResId = getComponentIcon(componentInfo);
}
}
if (iconResId != 0) {
final Icon icon = Icon.createWithResource(componentInfo.packageName, iconResId); final Icon icon = Icon.createWithResource(componentInfo.packageName, iconResId);
if (isIconTintable(context)) { if (isIconTintable(context)) {
final TypedArray a = context.obtainStyledAttributes(new int[]{ final TypedArray a = context.obtainStyledAttributes(new int[]{

View File

@@ -98,7 +98,7 @@ public class MetricsFeatureProvider {
/** /**
* Logs a simple action without page id or attribution * Logs a simple action without page id or attribution
*/ */
public void action(Context context, int category, Pair<Integer, Object>... taggedData) { public void action(Context context, int category, Pair<Integer, Object>... taggedData) {
for (LogWriter writer : mLoggerWriters) { for (LogWriter writer : mLoggerWriters) {
writer.action(context, category, taggedData); writer.action(context, category, taggedData);
} }

View File

@@ -105,11 +105,10 @@ public class ActivityTileTest {
} }
@Test @Test
public void getIcon_noIconMetadata_returnActivityIcon() { public void getIcon_transparentColorInMetadata_returnNull() {
mActivityInfo.metaData.putInt(META_DATA_PREFERENCE_ICON, 0); mActivityInfo.metaData.putInt(META_DATA_PREFERENCE_ICON, android.R.color.transparent);
assertThat(mTile.getIcon(RuntimeEnvironment.application).getResId()) assertThat(mTile.getIcon(RuntimeEnvironment.application)).isNull();
.isEqualTo(mActivityInfo.icon);
} }
@Test @Test