summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/compat/UserManagerCompatVL.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/launcher3/compat/UserManagerCompatVL.java')
-rw-r--r--src/com/android/launcher3/compat/UserManagerCompatVL.java43
1 files changed, 17 insertions, 26 deletions
diff --git a/src/com/android/launcher3/compat/UserManagerCompatVL.java b/src/com/android/launcher3/compat/UserManagerCompatVL.java
index 8d3ca8577..e071a8f71 100644
--- a/src/com/android/launcher3/compat/UserManagerCompatVL.java
+++ b/src/com/android/launcher3/compat/UserManagerCompatVL.java
@@ -22,9 +22,8 @@ import android.graphics.drawable.Drawable;
import android.os.UserHandle;
import android.os.UserManager;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
public class UserManagerCompatVL extends UserManagerCompatV17 {
@@ -34,35 +33,27 @@ public class UserManagerCompatVL extends UserManagerCompatV17 {
}
public List<UserHandleCompat> getUserProfiles() {
- Method method = ReflectUtils.getMethod(mUserManager.getClass(), "getUserProfiles");
- if (method != null) {
- List<UserHandle> users = (List<UserHandle>) ReflectUtils.invokeMethod(
- mUserManager, method);
- if (users != null) {
- ArrayList<UserHandleCompat> compatUsers = new ArrayList<UserHandleCompat>(
- users.size());
- for (UserHandle user : users) {
- compatUsers.add(UserHandleCompat.fromUser(user));
- }
- return compatUsers;
- }
+ List<UserHandle> users = mUserManager.getUserProfiles();
+ if (users == null) {
+ return Collections.EMPTY_LIST;
}
- // Fall back to non L version.
- return super.getUserProfiles();
+ ArrayList<UserHandleCompat> compatUsers = new ArrayList<UserHandleCompat>(
+ users.size());
+ for (UserHandle user : users) {
+ compatUsers.add(UserHandleCompat.fromUser(user));
+ }
+ return compatUsers;
}
public Drawable getBadgedDrawableForUser(Drawable unbadged, UserHandleCompat user) {
- Method method = ReflectUtils.getMethod(mUserManager.getClass(), "getBadgedDrawableForUser",
- Drawable.class, UserHandle.class);
- if (method != null) {
- Drawable d = (Drawable) ReflectUtils.invokeMethod(mUserManager, method, unbadged,
- user.getUser());
- if (d != null) {
- return d;
- }
+ return mUserManager.getBadgedDrawableForUser(unbadged, user.getUser());
+ }
+
+ public String getBadgedLabelForUser(String label, UserHandleCompat user) {
+ if (user == null) {
+ return label;
}
- // Fall back to non L version.
- return super.getBadgedDrawableForUser(unbadged, user);
+ return mUserManager.getBadgedLabelForUser(label, user.getUser());
}
}