Fix blank pink loading icons by ensuring that cache entry won't downgrade existing icon.

Bug: 326607598
Test: manually tested B&R
Flag: N/A
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:d073ab0b3922eb0320a6bc2141cd4a57593a0cac)
Merged-In: I8aac643ec5ca3162cd62bf1051cc751800c626dd
Change-Id: I8aac643ec5ca3162cd62bf1051cc751800c626dd
diff --git a/src/com/android/launcher3/icons/IconCache.java b/src/com/android/launcher3/icons/IconCache.java
index af704a8..9b5efd6 100644
--- a/src/com/android/launcher3/icons/IconCache.java
+++ b/src/com/android/launcher3/icons/IconCache.java
@@ -373,8 +373,13 @@
                     infoInOut.user, activityInfoProvider, mLauncherActivityInfoCachingLogic,
                     usePkgIcon, useLowResIcon);
             applyPackageEntry(packageEntry, infoInOut, entry);
-        } else {
+        } else if (useLowResIcon || !entry.bitmap.isNullOrLowRes()
+                || infoInOut.bitmap.isNullOrLowRes()) {
+            // Only use cache entry if it will not downgrade the current bitmap in infoInOut
             applyCacheEntry(entry, infoInOut);
+        } else {
+            Log.d(TAG, "getTitleAndIcon: Cache entry bitmap was a downgrade of existing bitmap"
+                    + " in ItemInfo. Skipping.");
         }
     }