Stop using AppState for app icon in DomainAppPreference.

Change-Id: I080ed9d2d7d70c092bec54ed4e4b6bb2b6c8f453
Fixes: 77967533
Test: robotest
This commit is contained in:
Fan Zhang
2018-05-30 12:18:33 -07:00
parent 74ba1a51d7
commit 179f537173
3 changed files with 34 additions and 39 deletions

View File

@@ -20,6 +20,7 @@ import android.app.Application;
import android.content.Context;
import android.text.TextUtils;
import android.util.ArrayMap;
import android.util.IconDrawableFactory;
import com.android.settings.R;
import com.android.settings.applications.AppInfoBase;
@@ -154,12 +155,14 @@ public class DomainAppPreferenceController extends BasePreferenceController impl
private void rebuildAppList(PreferenceGroup group, ArrayList<AppEntry> apps) {
cacheAllPrefs(group);
final int size = apps.size();
final Context context = group.getContext();
final IconDrawableFactory iconDrawableFactory = IconDrawableFactory.newInstance(context);
for (int i = 0; i < size; i++) {
AppEntry entry = apps.get(i);
String key = entry.info.packageName + "|" + entry.info.uid;
final AppEntry entry = apps.get(i);
final String key = entry.info.packageName + "|" + entry.info.uid;
DomainAppPreference preference = (DomainAppPreference) getCachedPreference(key);
if (preference == null) {
preference = new DomainAppPreference(group.getContext(), mApplicationsState, entry);
preference = new DomainAppPreference(context, iconDrawableFactory, entry);
preference.setKey(key);
group.addPreference(preference);
} else {