Loading core/res/res/drawable/ic_corp_user_badge.xml +2 −1 Original line number Diff line number Diff line Loading @@ -2,7 +2,8 @@ android:width="36dp" android:height="36dp" android:viewportWidth="36.0" android:viewportHeight="36.0"> android:viewportHeight="36.0" android:tint="?attr/colorControlNormal"> <path android:pathData="M16.3,11.3h3.4v1.7h-3.4z" android:fillColor="#FFFFFF"/> Loading packages/SettingsLib/src/com/android/settingslib/Utils.java +1 −2 Original line number Diff line number Diff line package com.android.settingslib; import android.annotation.ColorInt; import android.content.ContentResolver; import android.content.Context; import android.content.Intent; import android.content.pm.PackageInfo; Loading Loading @@ -142,7 +141,7 @@ public class Utils { public static Drawable getUserIcon(Context context, UserManager um, UserInfo user) { final int iconSize = UserIconDrawable.getSizeForList(context); if (user.isManagedProfile()) { Drawable drawable = UserIconDrawable.getManagedUserBadgeDrawable(context); Drawable drawable = UserIconDrawable.getManagedUserDrawable(context); drawable.setBounds(0, 0, iconSize, iconSize); return drawable; } Loading packages/SettingsLib/src/com/android/settingslib/drawable/UserIconDrawable.java +17 −8 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.settingslib.drawable; import android.annotation.DrawableRes; import android.annotation.NonNull; import android.app.admin.DevicePolicyManager; import android.content.Context; Loading @@ -36,6 +37,7 @@ import android.graphics.RectF; import android.graphics.Shader; import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.os.UserHandle; import com.android.settingslib.R; Loading Loading @@ -69,15 +71,23 @@ public class UserIconDrawable extends Drawable implements Drawable.Callback { private float mBadgeMargin; /** * Gets the system default managed-user badge as a drawable * Gets the system default managed-user badge as a drawable. This drawable is tint-able. * For badging purpose, consider * {@link android.content.pm.PackageManager#getUserBadgedDrawableForDensity(Drawable, UserHandle, Rect, int)}. * * @param context * @return drawable containing just the badge */ public static Drawable getManagedUserBadgeDrawable(Context context) { int displayDensity = context.getResources().getDisplayMetrics().densityDpi; public static Drawable getManagedUserDrawable(Context context) { return getDrawableForDisplayDensity (context, com.android.internal.R.drawable.ic_corp_user_badge); } private static Drawable getDrawableForDisplayDensity( Context context, @DrawableRes int drawable) { int density = context.getResources().getDisplayMetrics().densityDpi; return context.getResources().getDrawableForDensity( com.android.internal.R.drawable.ic_corp_user_badge, displayDensity, context.getTheme()); drawable, density, context.getTheme()); } /** Loading Loading @@ -164,7 +174,8 @@ public class UserIconDrawable extends Drawable implements Drawable.Callback { boolean isManaged = context.getSystemService(DevicePolicyManager.class) .getProfileOwnerAsUser(userId) != null; if (isManaged) { badge = getManagedUserBadgeDrawable(context); badge = getDrawableForDisplayDensity( context, com.android.internal.R.drawable.ic_corp_badge_case); } return setBadge(badge); } Loading Loading @@ -322,7 +333,6 @@ public class UserIconDrawable extends Drawable implements Drawable.Callback { mIntrinsicRadius, mIconPaint); canvas.restoreToCount(saveId); } if (mFrameColor != null) { mFramePaint.setColor(mFrameColor.getColorForState(getState(), Color.TRANSPARENT)); } Loading @@ -343,7 +353,6 @@ public class UserIconDrawable extends Drawable implements Drawable.Callback { final float borderRadius = mBadge.getBounds().width() * 0.5f + mBadgeMargin; canvas.drawCircle(badgeLeft + mBadgeRadius, badgeTop + mBadgeRadius, borderRadius, mClearPaint); mBadge.draw(canvas); } } Loading Loading
core/res/res/drawable/ic_corp_user_badge.xml +2 −1 Original line number Diff line number Diff line Loading @@ -2,7 +2,8 @@ android:width="36dp" android:height="36dp" android:viewportWidth="36.0" android:viewportHeight="36.0"> android:viewportHeight="36.0" android:tint="?attr/colorControlNormal"> <path android:pathData="M16.3,11.3h3.4v1.7h-3.4z" android:fillColor="#FFFFFF"/> Loading
packages/SettingsLib/src/com/android/settingslib/Utils.java +1 −2 Original line number Diff line number Diff line package com.android.settingslib; import android.annotation.ColorInt; import android.content.ContentResolver; import android.content.Context; import android.content.Intent; import android.content.pm.PackageInfo; Loading Loading @@ -142,7 +141,7 @@ public class Utils { public static Drawable getUserIcon(Context context, UserManager um, UserInfo user) { final int iconSize = UserIconDrawable.getSizeForList(context); if (user.isManagedProfile()) { Drawable drawable = UserIconDrawable.getManagedUserBadgeDrawable(context); Drawable drawable = UserIconDrawable.getManagedUserDrawable(context); drawable.setBounds(0, 0, iconSize, iconSize); return drawable; } Loading
packages/SettingsLib/src/com/android/settingslib/drawable/UserIconDrawable.java +17 −8 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.settingslib.drawable; import android.annotation.DrawableRes; import android.annotation.NonNull; import android.app.admin.DevicePolicyManager; import android.content.Context; Loading @@ -36,6 +37,7 @@ import android.graphics.RectF; import android.graphics.Shader; import android.graphics.drawable.BitmapDrawable; import android.graphics.drawable.Drawable; import android.os.UserHandle; import com.android.settingslib.R; Loading Loading @@ -69,15 +71,23 @@ public class UserIconDrawable extends Drawable implements Drawable.Callback { private float mBadgeMargin; /** * Gets the system default managed-user badge as a drawable * Gets the system default managed-user badge as a drawable. This drawable is tint-able. * For badging purpose, consider * {@link android.content.pm.PackageManager#getUserBadgedDrawableForDensity(Drawable, UserHandle, Rect, int)}. * * @param context * @return drawable containing just the badge */ public static Drawable getManagedUserBadgeDrawable(Context context) { int displayDensity = context.getResources().getDisplayMetrics().densityDpi; public static Drawable getManagedUserDrawable(Context context) { return getDrawableForDisplayDensity (context, com.android.internal.R.drawable.ic_corp_user_badge); } private static Drawable getDrawableForDisplayDensity( Context context, @DrawableRes int drawable) { int density = context.getResources().getDisplayMetrics().densityDpi; return context.getResources().getDrawableForDensity( com.android.internal.R.drawable.ic_corp_user_badge, displayDensity, context.getTheme()); drawable, density, context.getTheme()); } /** Loading Loading @@ -164,7 +174,8 @@ public class UserIconDrawable extends Drawable implements Drawable.Callback { boolean isManaged = context.getSystemService(DevicePolicyManager.class) .getProfileOwnerAsUser(userId) != null; if (isManaged) { badge = getManagedUserBadgeDrawable(context); badge = getDrawableForDisplayDensity( context, com.android.internal.R.drawable.ic_corp_badge_case); } return setBadge(badge); } Loading Loading @@ -322,7 +333,6 @@ public class UserIconDrawable extends Drawable implements Drawable.Callback { mIntrinsicRadius, mIconPaint); canvas.restoreToCount(saveId); } if (mFrameColor != null) { mFramePaint.setColor(mFrameColor.getColorForState(getState(), Color.TRANSPARENT)); } Loading @@ -343,7 +353,6 @@ public class UserIconDrawable extends Drawable implements Drawable.Callback { final float borderRadius = mBadge.getBounds().width() * 0.5f + mBadgeMargin; canvas.drawCircle(badgeLeft + mBadgeRadius, badgeTop + mBadgeRadius, borderRadius, mClearPaint); mBadge.draw(canvas); } } Loading