Loading src/com/android/settings/dashboard/DashboardAdapter.java +1 −25 Original line number Diff line number Diff line Loading @@ -51,6 +51,7 @@ import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState; import com.android.settingslib.drawer.DashboardCategory; import com.android.settingslib.drawer.Tile; import com.android.settingslib.suggestions.SuggestionControllerMixin; import com.android.settingslib.utils.IconCache; import java.util.List; Loading Loading @@ -365,31 +366,6 @@ public class DashboardAdapter extends RecyclerView.Adapter<DashboardAdapter.Dash mRecyclerView.scrollToPosition(mDashboardData.hasSuggestion() ? 1 : 0); } public static class IconCache { private final Context mContext; private final ArrayMap<Icon, Drawable> mMap = new ArrayMap<>(); public IconCache(Context context) { mContext = context; } public Drawable getIcon(Icon icon) { if (icon == null) { return null; } Drawable drawable = mMap.get(icon); if (drawable == null) { drawable = icon.loadDrawable(mContext); updateIcon(icon, drawable); } return drawable; } public void updateIcon(Icon icon, Drawable drawable) { mMap.put(icon, drawable); } } public static class DashboardItemHolder extends RecyclerView.ViewHolder { public final ImageView icon; public final TextView title; Loading src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java +1 −1 Original line number Diff line number Diff line Loading @@ -38,7 +38,6 @@ import android.widget.LinearLayout; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.settings.R; import com.android.settings.dashboard.DashboardAdapter.DashboardItemHolder; import com.android.settings.dashboard.DashboardAdapter.IconCache; import com.android.settings.overlay.FeatureFactory; import com.android.settingslib.Utils; import com.android.settingslib.core.instrumentation.MetricsFeatureProvider; Loading @@ -46,6 +45,7 @@ import com.android.settingslib.core.lifecycle.Lifecycle; import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState; import com.android.settingslib.suggestions.SuggestionControllerMixin; import com.android.settingslib.utils.IconCache; import java.util.ArrayList; import java.util.List; Loading tests/robotests/src/com/android/settings/dashboard/DashboardAdapterTest.java +3 −2 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.shadow.SettingsShadowResources; import com.android.settingslib.drawer.Tile; import com.android.settingslib.utils.IconCache; import org.junit.Before; import org.junit.Test; Loading Loading @@ -244,7 +245,7 @@ public class DashboardAdapterTest { new DashboardAdapter.DashboardItemHolder(view); final Tile tile = new Tile(); tile.icon = Icon.createWithResource(context, R.drawable.ic_settings); final DashboardAdapter.IconCache iconCache = mock(DashboardAdapter.IconCache.class); final IconCache iconCache = mock(IconCache.class); when(iconCache.getIcon(tile.icon)).thenReturn(context.getDrawable(R.drawable.ic_settings)); mDashboardAdapter = new DashboardAdapter(context, null /* savedInstanceState */, Loading @@ -265,7 +266,7 @@ public class DashboardAdapterTest { tile.icon = mock(Icon.class); when(tile.icon.getResPackage()).thenReturn("another.package"); final DashboardAdapter.IconCache iconCache = mock(DashboardAdapter.IconCache.class); final IconCache iconCache = mock(IconCache.class); when(iconCache.getIcon(tile.icon)).thenReturn(context.getDrawable(R.drawable.ic_settings)); mDashboardAdapter = new DashboardAdapter(context, null /* savedInstanceState */, Loading tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterTest.java +3 −2 Original line number Diff line number Diff line Loading @@ -48,6 +48,7 @@ import com.android.settings.dashboard.DashboardAdapter; import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settingslib.suggestions.SuggestionControllerMixin; import com.android.settingslib.utils.IconCache; import org.junit.Before; import org.junit.Test; Loading Loading @@ -252,7 +253,7 @@ public class SuggestionAdapterTest { mSuggestionHolder = mSuggestionAdapter.onCreateViewHolder( new FrameLayout(RuntimeEnvironment.application), mSuggestionAdapter.getItemViewType(0)); DashboardAdapter.IconCache cache = mock(DashboardAdapter.IconCache.class); IconCache cache = mock(IconCache.class); final Drawable drawable = mock(Drawable.class); when(cache.getIcon(icon)).thenReturn(drawable); ReflectionHelpers.setField(mSuggestionAdapter, "mCache", cache); Loading Loading @@ -280,7 +281,7 @@ public class SuggestionAdapterTest { mSuggestionHolder = mSuggestionAdapter.onCreateViewHolder( new FrameLayout(RuntimeEnvironment.application), mSuggestionAdapter.getItemViewType(0)); DashboardAdapter.IconCache cache = mock(DashboardAdapter.IconCache.class); IconCache cache = mock(IconCache.class); final Drawable drawable = mock(Drawable.class); when(cache.getIcon(icon)).thenReturn(drawable); ReflectionHelpers.setField(mSuggestionAdapter, "mCache", cache); Loading Loading
src/com/android/settings/dashboard/DashboardAdapter.java +1 −25 Original line number Diff line number Diff line Loading @@ -51,6 +51,7 @@ import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState; import com.android.settingslib.drawer.DashboardCategory; import com.android.settingslib.drawer.Tile; import com.android.settingslib.suggestions.SuggestionControllerMixin; import com.android.settingslib.utils.IconCache; import java.util.List; Loading Loading @@ -365,31 +366,6 @@ public class DashboardAdapter extends RecyclerView.Adapter<DashboardAdapter.Dash mRecyclerView.scrollToPosition(mDashboardData.hasSuggestion() ? 1 : 0); } public static class IconCache { private final Context mContext; private final ArrayMap<Icon, Drawable> mMap = new ArrayMap<>(); public IconCache(Context context) { mContext = context; } public Drawable getIcon(Icon icon) { if (icon == null) { return null; } Drawable drawable = mMap.get(icon); if (drawable == null) { drawable = icon.loadDrawable(mContext); updateIcon(icon, drawable); } return drawable; } public void updateIcon(Icon icon, Drawable drawable) { mMap.put(icon, drawable); } } public static class DashboardItemHolder extends RecyclerView.ViewHolder { public final ImageView icon; public final TextView title; Loading
src/com/android/settings/dashboard/suggestions/SuggestionAdapter.java +1 −1 Original line number Diff line number Diff line Loading @@ -38,7 +38,6 @@ import android.widget.LinearLayout; import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.settings.R; import com.android.settings.dashboard.DashboardAdapter.DashboardItemHolder; import com.android.settings.dashboard.DashboardAdapter.IconCache; import com.android.settings.overlay.FeatureFactory; import com.android.settingslib.Utils; import com.android.settingslib.core.instrumentation.MetricsFeatureProvider; Loading @@ -46,6 +45,7 @@ import com.android.settingslib.core.lifecycle.Lifecycle; import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.events.OnSaveInstanceState; import com.android.settingslib.suggestions.SuggestionControllerMixin; import com.android.settingslib.utils.IconCache; import java.util.ArrayList; import java.util.List; Loading
tests/robotests/src/com/android/settings/dashboard/DashboardAdapterTest.java +3 −2 Original line number Diff line number Diff line Loading @@ -47,6 +47,7 @@ import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.shadow.SettingsShadowResources; import com.android.settingslib.drawer.Tile; import com.android.settingslib.utils.IconCache; import org.junit.Before; import org.junit.Test; Loading Loading @@ -244,7 +245,7 @@ public class DashboardAdapterTest { new DashboardAdapter.DashboardItemHolder(view); final Tile tile = new Tile(); tile.icon = Icon.createWithResource(context, R.drawable.ic_settings); final DashboardAdapter.IconCache iconCache = mock(DashboardAdapter.IconCache.class); final IconCache iconCache = mock(IconCache.class); when(iconCache.getIcon(tile.icon)).thenReturn(context.getDrawable(R.drawable.ic_settings)); mDashboardAdapter = new DashboardAdapter(context, null /* savedInstanceState */, Loading @@ -265,7 +266,7 @@ public class DashboardAdapterTest { tile.icon = mock(Icon.class); when(tile.icon.getResPackage()).thenReturn("another.package"); final DashboardAdapter.IconCache iconCache = mock(DashboardAdapter.IconCache.class); final IconCache iconCache = mock(IconCache.class); when(iconCache.getIcon(tile.icon)).thenReturn(context.getDrawable(R.drawable.ic_settings)); mDashboardAdapter = new DashboardAdapter(context, null /* savedInstanceState */, Loading
tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionAdapterTest.java +3 −2 Original line number Diff line number Diff line Loading @@ -48,6 +48,7 @@ import com.android.settings.dashboard.DashboardAdapter; import com.android.settings.testutils.FakeFeatureFactory; import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settingslib.suggestions.SuggestionControllerMixin; import com.android.settingslib.utils.IconCache; import org.junit.Before; import org.junit.Test; Loading Loading @@ -252,7 +253,7 @@ public class SuggestionAdapterTest { mSuggestionHolder = mSuggestionAdapter.onCreateViewHolder( new FrameLayout(RuntimeEnvironment.application), mSuggestionAdapter.getItemViewType(0)); DashboardAdapter.IconCache cache = mock(DashboardAdapter.IconCache.class); IconCache cache = mock(IconCache.class); final Drawable drawable = mock(Drawable.class); when(cache.getIcon(icon)).thenReturn(drawable); ReflectionHelpers.setField(mSuggestionAdapter, "mCache", cache); Loading Loading @@ -280,7 +281,7 @@ public class SuggestionAdapterTest { mSuggestionHolder = mSuggestionAdapter.onCreateViewHolder( new FrameLayout(RuntimeEnvironment.application), mSuggestionAdapter.getItemViewType(0)); DashboardAdapter.IconCache cache = mock(DashboardAdapter.IconCache.class); IconCache cache = mock(IconCache.class); final Drawable drawable = mock(Drawable.class); when(cache.getIcon(icon)).thenReturn(drawable); ReflectionHelpers.setField(mSuggestionAdapter, "mCache", cache); Loading