From 6c9333974ddcae554f707108c05ae5a338f85d4d Mon Sep 17 00:00:00 2001 From: kholoud mohamed Date: Tue, 23 Nov 2021 17:27:15 +0000 Subject: [PATCH] Changed the managed profile switching icon Switched CrossProfileApps#getProfileSwitchingIconDrawable to use PackageManager#getUserBadgeForDensityNoBackground which returns a drawable that could be updated by the device management role holder. Test: manual Bug: 203548565 Bug: 188410712 Change-Id: Ia4246d7196b9d16e940d19752076b7d7f8916120 --- core/java/android/content/pm/CrossProfileApps.java | 3 ++- .../src/android/content/pm/CrossProfileAppsTest.java | 6 +++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/core/java/android/content/pm/CrossProfileApps.java b/core/java/android/content/pm/CrossProfileApps.java index 1e887582e5c30..94f056110bf7a 100644 --- a/core/java/android/content/pm/CrossProfileApps.java +++ b/core/java/android/content/pm/CrossProfileApps.java @@ -282,7 +282,8 @@ public class CrossProfileApps { final boolean isManagedProfile = mUserManager.isManagedProfile(userHandle.getIdentifier()); if (isManagedProfile) { - return mResources.getDrawable(R.drawable.ic_corp_badge, null); + return mContext.getPackageManager().getUserBadgeForDensityNoBackground( + userHandle, /* density= */ 0); } else { return UserIcons.getDefaultUserIcon( mResources, UserHandle.USER_SYSTEM, true /* light */); diff --git a/core/tests/coretests/src/android/content/pm/CrossProfileAppsTest.java b/core/tests/coretests/src/android/content/pm/CrossProfileAppsTest.java index b66642c20808a..fa657f7a8928b 100644 --- a/core/tests/coretests/src/android/content/pm/CrossProfileAppsTest.java +++ b/core/tests/coretests/src/android/content/pm/CrossProfileAppsTest.java @@ -71,6 +71,8 @@ public class CrossProfileAppsTest { private Resources mResources; @Mock(answer = Answers.RETURNS_DEEP_STUBS) private Drawable mDrawable; + @Mock + private PackageManager mPackageManager; private CrossProfileApps mCrossProfileApps; @Before @@ -87,6 +89,7 @@ public class CrossProfileAppsTest { Context.DEVICE_POLICY_SERVICE); when(mContext.getSystemService(Context.DEVICE_POLICY_SERVICE)).thenReturn( mDevicePolicyManager); + when(mContext.getPackageManager()).thenReturn(mPackageManager); } @Before @@ -131,7 +134,8 @@ public class CrossProfileAppsTest { setValidTargetProfile(MANAGED_PROFILE); mCrossProfileApps.getProfileSwitchingIconDrawable(MANAGED_PROFILE); - verify(mResources).getDrawable(R.drawable.ic_corp_badge, null); + verify(mPackageManager).getUserBadgeForDensityNoBackground( + MANAGED_PROFILE, /* density= */0); } @Test