Load user photos through system_server.

Bug: 7194137
Change-Id: Ie36ca40c48fb06d55d120bfcf3db69aea9d83829
This commit is contained in:
Jeff Sharkey
2012-09-19 11:15:45 -07:00
parent f5de1db28a
commit 8882ccdd3e
3 changed files with 6 additions and 9 deletions

View File

@@ -767,10 +767,7 @@ public class PowerUsageSummary extends PreferenceFragment implements Runnable {
final int userId = mUserSippers.keyAt(i); final int userId = mUserSippers.keyAt(i);
final List<BatterySipper> sippers = mUserSippers.valueAt(i); final List<BatterySipper> sippers = mUserSippers.valueAt(i);
UserInfo info = mUm.getUserInfo(userId); UserInfo info = mUm.getUserInfo(userId);
Drawable icon = null; Drawable icon = UserUtils.getUserIcon(mUm, info, getResources());
if (info != null && info.iconPath != null) {
icon = UserUtils.getUserIcon(mUm, info);
}
String name = info != null ? info.name : null; String name = info != null ? info.name : null;
if (name == null) { if (name == null) {
name = Integer.toString(info.id); name = Integer.toString(info.id);

View File

@@ -32,6 +32,7 @@ import android.util.SparseArray;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.Utils; import com.android.settings.Utils;
import com.android.settings.users.UserUtils;
/** /**
* Return details about a specific UID, handling special cases like * Return details about a specific UID, handling special cases like
@@ -118,7 +119,7 @@ public class UidDetailProvider {
final UserInfo info = um.getUserInfo(userHandle); final UserInfo info = um.getUserInfo(userHandle);
if (info != null) { if (info != null) {
detail.label = res.getString(R.string.running_process_item_user_label, info.name); detail.label = res.getString(R.string.running_process_item_user_label, info.name);
detail.icon = Drawable.createFromPath(info.iconPath); detail.icon = UserUtils.getUserIcon(um, info, res);
return detail; return detail;
} }
} }

View File

@@ -17,18 +17,17 @@
package com.android.settings.users; package com.android.settings.users;
import android.content.pm.UserInfo; import android.content.pm.UserInfo;
import android.content.res.Resources;
import android.graphics.Bitmap; import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable; import android.graphics.drawable.Drawable;
import android.os.ParcelFileDescriptor;
import android.os.UserManager; import android.os.UserManager;
public class UserUtils { public class UserUtils {
public static Drawable getUserIcon(UserManager um, UserInfo user, Resources res) {
public static Drawable getUserIcon(UserManager um, UserInfo user) {
if (user.iconPath == null) return null; if (user.iconPath == null) return null;
Bitmap icon = um.getUserIcon(user.id); Bitmap icon = um.getUserIcon(user.id);
if (icon == null) return null; if (icon == null) return null;
return new BitmapDrawable(icon); return new BitmapDrawable(res, icon);
} }
} }