summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/users/UserSettings.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/settings/users/UserSettings.java')
-rw-r--r--src/com/android/settings/users/UserSettings.java16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/com/android/settings/users/UserSettings.java b/src/com/android/settings/users/UserSettings.java
index 9380586..e530493 100644
--- a/src/com/android/settings/users/UserSettings.java
+++ b/src/com/android/settings/users/UserSettings.java
@@ -16,8 +16,11 @@
package com.android.settings.users;
+import android.content.Context;
import android.content.pm.UserInfo;
+import android.graphics.drawable.Drawable;
import android.os.Bundle;
+import android.os.UserManager;
import android.preference.Preference;
import android.preference.Preference.OnPreferenceClickListener;
import android.preference.PreferenceActivity;
@@ -79,19 +82,28 @@ public class UserSettings extends SettingsPreferenceFragment
}
private void updateUserList() {
- List<UserInfo> users = getActivity().getPackageManager().getUsers();
+ List<UserInfo> users = ((UserManager) getActivity().getSystemService(Context.USER_SERVICE))
+ .getUsers();
mUserListCategory.removeAll();
for (UserInfo user : users) {
- if (user.id == 0) continue;
Preference pref = new Preference(getActivity());
pref.setTitle(user.name);
pref.setOnPreferenceClickListener(this);
pref.setKey("id=" + user.id);
+ if (user.iconPath != null) {
+ setPhotoId(pref, user.iconPath);
+ }
mUserListCategory.addPreference(pref);
}
}
+ private void setPhotoId(Preference pref, String realPath) {
+ Drawable d = Drawable.createFromPath(realPath);
+ if (d == null) return;
+ pref.setIcon(d);
+ }
+
@Override
public boolean onPreferenceClick(Preference pref) {
String sid = pref.getKey();