diff options
| -rw-r--r-- | packages/SettingsLib/src/com/android/settingslib/Utils.java | 20 | ||||
| -rw-r--r-- | packages/SettingsLib/src/com/android/settingslib/accounts/AuthenticatorHelper.java | 4 |
2 files changed, 13 insertions, 11 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/Utils.java b/packages/SettingsLib/src/com/android/settingslib/Utils.java index eb02a1c8b880..a43412e116c8 100644 --- a/packages/SettingsLib/src/com/android/settingslib/Utils.java +++ b/packages/SettingsLib/src/com/android/settingslib/Utils.java @@ -29,8 +29,6 @@ import android.telephony.AccessNetworkConstants; import android.telephony.NetworkRegistrationInfo; import android.telephony.ServiceState; -import androidx.annotation.NonNull; - import com.android.internal.annotations.VisibleForTesting; import com.android.internal.util.UserIcons; import com.android.launcher3.icons.IconFactory; @@ -457,19 +455,21 @@ public class Utils { return state; } - /** - * Get the {@link Drawable} that represents the app icon - */ - public static @NonNull Drawable getBadgedIcon( - @NonNull Context context, @NonNull ApplicationInfo appInfo) { - final UserHandle user = UserHandle.getUserHandleForUid(appInfo.uid); + /** Get the corresponding adaptive icon drawable. */ + public static Drawable getBadgedIcon(Context context, Drawable icon, UserHandle user) { try (IconFactory iconFactory = IconFactory.obtain(context)) { - final Bitmap iconBmp = iconFactory.createBadgedIconBitmap( - appInfo.loadUnbadgedIcon(context.getPackageManager()), user, false).icon; + final Bitmap iconBmp = iconFactory.createBadgedIconBitmap(icon, user, + true /* shrinkNonAdaptiveIcons */).icon; return new BitmapDrawable(context.getResources(), iconBmp); } } + /** Get the {@link Drawable} that represents the app icon */ + public static Drawable getBadgedIcon(Context context, ApplicationInfo appInfo) { + return getBadgedIcon(context, appInfo.loadUnbadgedIcon(context.getPackageManager()), + UserHandle.getUserHandleForUid(appInfo.uid)); + } + private static boolean isNotInIwlan(ServiceState serviceState) { final NetworkRegistrationInfo networkRegWlan = serviceState.getNetworkRegistrationInfo( NetworkRegistrationInfo.DOMAIN_PS, diff --git a/packages/SettingsLib/src/com/android/settingslib/accounts/AuthenticatorHelper.java b/packages/SettingsLib/src/com/android/settingslib/accounts/AuthenticatorHelper.java index ef511bbc8133..4af9e3c441de 100644 --- a/packages/SettingsLib/src/com/android/settingslib/accounts/AuthenticatorHelper.java +++ b/packages/SettingsLib/src/com/android/settingslib/accounts/AuthenticatorHelper.java @@ -32,6 +32,8 @@ import android.os.AsyncTask; import android.os.UserHandle; import android.util.Log; +import com.android.settingslib.Utils; + import java.util.ArrayList; import java.util.HashMap; import java.util.Map; @@ -116,7 +118,7 @@ final public class AuthenticatorHelper extends BroadcastReceiver { if (icon == null) { icon = context.getPackageManager().getDefaultActivityIcon(); } - return icon; + return Utils.getBadgedIcon(mContext, icon, mUserHandle); } /** |