Cache default circle avatar for faster creation of UserSettings
Change-Id: Ie2ed9d032f71fad7a89edde147f231a1dc479aae
This commit is contained in:
@@ -134,6 +134,7 @@ public class UserSettings extends SettingsPreferenceFragment
|
|||||||
private final Object mUserLock = new Object();
|
private final Object mUserLock = new Object();
|
||||||
private UserManager mUserManager;
|
private UserManager mUserManager;
|
||||||
private SparseArray<Bitmap> mUserIcons = new SparseArray<Bitmap>();
|
private SparseArray<Bitmap> mUserIcons = new SparseArray<Bitmap>();
|
||||||
|
private Drawable mDefaultCircleAvatar;
|
||||||
private boolean mIsOwner = UserHandle.myUserId() == UserHandle.USER_OWNER;
|
private boolean mIsOwner = UserHandle.myUserId() == UserHandle.USER_OWNER;
|
||||||
|
|
||||||
|
|
||||||
@@ -283,6 +284,13 @@ public class UserSettings extends SettingsPreferenceFragment
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private Drawable getDefaultCircleAvatar() {
|
||||||
|
if (mDefaultCircleAvatar == null) {
|
||||||
|
mDefaultCircleAvatar = encircle(R.drawable.avatar_default_1);
|
||||||
|
}
|
||||||
|
return mDefaultCircleAvatar;
|
||||||
|
}
|
||||||
|
|
||||||
private boolean hasLockscreenSecurity() {
|
private boolean hasLockscreenSecurity() {
|
||||||
LockPatternUtils lpu = new LockPatternUtils(getActivity());
|
LockPatternUtils lpu = new LockPatternUtils(getActivity());
|
||||||
return lpu.isLockPasswordEnabled() || lpu.isLockPatternEnabled();
|
return lpu.isLockPasswordEnabled() || lpu.isLockPatternEnabled();
|
||||||
@@ -638,7 +646,7 @@ public class UserSettings extends SettingsPreferenceFragment
|
|||||||
if (user.iconPath != null) {
|
if (user.iconPath != null) {
|
||||||
if (mUserIcons.get(user.id) == null) {
|
if (mUserIcons.get(user.id) == null) {
|
||||||
missingIcons.add(user.id);
|
missingIcons.add(user.id);
|
||||||
pref.setIcon(encircle(R.drawable.avatar_default_1));
|
pref.setIcon(getDefaultCircleAvatar());
|
||||||
} else {
|
} else {
|
||||||
setPhotoId(pref, user);
|
setPhotoId(pref, user);
|
||||||
}
|
}
|
||||||
@@ -650,7 +658,7 @@ public class UserSettings extends SettingsPreferenceFragment
|
|||||||
null, null);
|
null, null);
|
||||||
pref.setEnabled(false);
|
pref.setEnabled(false);
|
||||||
pref.setTitle(R.string.user_new_user_name);
|
pref.setTitle(R.string.user_new_user_name);
|
||||||
pref.setIcon(encircle(R.drawable.avatar_default_1));
|
pref.setIcon(getDefaultCircleAvatar());
|
||||||
mUserListCategory.addPreference(pref);
|
mUserListCategory.addPreference(pref);
|
||||||
}
|
}
|
||||||
getActivity().invalidateOptionsMenu();
|
getActivity().invalidateOptionsMenu();
|
||||||
|
Reference in New Issue
Block a user