From e402603084ee7157ae7df4713e191c611040dafd Mon Sep 17 00:00:00 2001 From: Oli Lan Date: Wed, 2 Nov 2022 16:26:58 +0000 Subject: [PATCH] Crop avatar to circle when syncing from Contacts. This ensures that photos synced to the Android user icon from the Me Contact, by the ProfileUpdateReceiver, are cropped to a circle. This matches the behaviour when images are selected using the avatar picker. Bug: 256827004 Test: Manual, build & flash, sync photo, observe in lockscreen. Change-Id: If1abf110b74a3892a5cfb76ee344be79c867feed --- src/com/android/settings/users/UserSettings.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/users/UserSettings.java b/src/com/android/settings/users/UserSettings.java index de29aa43458..4aa7f443229 100644 --- a/src/com/android/settings/users/UserSettings.java +++ b/src/com/android/settings/users/UserSettings.java @@ -1681,7 +1681,10 @@ public class UserSettings extends SettingsPreferenceFragment } UserManager um = (UserManager) context.getSystemService(Context.USER_SERVICE); - Bitmap icon = BitmapFactory.decodeStream(avatarDataStream); + Bitmap decodedIcon = BitmapFactory.decodeStream(avatarDataStream); + CircleFramedDrawable drawable = CircleFramedDrawable.getInstance(context, decodedIcon); + Bitmap icon = UserIcons.convertToBitmapAtUserIconSize(context.getResources(), drawable); + um.setUserIcon(userId, icon); try { avatarDataStream.close();