Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 61e8ae1d authored by Pinyao Ting's avatar Pinyao Ting
Browse files

Refrain from overwriting shortcut icon with default icon

Invert the condition check in IconCache so that, if a shortcut is
already using a non-default icon, do not replace it with default icon
again.

Bug: 162783875
Test: add weather shortcut, backup, restore, verify its icon is not
replaced by default droid icon

Change-Id: Idaf4ce4afa84d21f7192a2f4ce41a6f8daa8d3f2
parent 017c9348
Loading
Loading
Loading
Loading
+4 −4
Original line number Original line Diff line number Diff line
@@ -67,8 +67,8 @@ public class IconCache extends BaseIconCache {


    private static final String TAG = "Launcher.IconCache";
    private static final String TAG = "Launcher.IconCache";


    private final Predicate<ItemInfoWithIcon> mIsUsingFallbackIconCheck = w -> w.bitmap != null
    private final Predicate<ItemInfoWithIcon> mIsUsingFallbackOrNonDefaultIconCheck = w ->
            && w.bitmap.isNullOrLowRes() && !isDefaultIcon(w.bitmap, w.user);
            w.bitmap != null && (w.bitmap.isNullOrLowRes() || !isDefaultIcon(w.bitmap, w.user));


    private final CachingLogic<ComponentWithLabel> mComponentWithLabelCachingLogic;
    private final CachingLogic<ComponentWithLabel> mComponentWithLabelCachingLogic;
    private final CachingLogic<LauncherActivityInfo> mLauncherActivityInfoCachingLogic;
    private final CachingLogic<LauncherActivityInfo> mLauncherActivityInfoCachingLogic;
@@ -192,14 +192,14 @@ public class IconCache extends BaseIconCache {
     * Fill in {@param info} with the icon for {@param si}
     * Fill in {@param info} with the icon for {@param si}
     */
     */
    public void getShortcutIcon(ItemInfoWithIcon info, ShortcutInfo si) {
    public void getShortcutIcon(ItemInfoWithIcon info, ShortcutInfo si) {
        getShortcutIcon(info, si, true, mIsUsingFallbackIconCheck);
        getShortcutIcon(info, si, true, mIsUsingFallbackOrNonDefaultIconCheck);
    }
    }


    /**
    /**
     * Fill in {@param info} with an unbadged icon for {@param si}
     * Fill in {@param info} with an unbadged icon for {@param si}
     */
     */
    public void getUnbadgedShortcutIcon(ItemInfoWithIcon info, ShortcutInfo si) {
    public void getUnbadgedShortcutIcon(ItemInfoWithIcon info, ShortcutInfo si) {
        getShortcutIcon(info, si, false, mIsUsingFallbackIconCheck);
        getShortcutIcon(info, si, false, mIsUsingFallbackOrNonDefaultIconCheck);
    }
    }


    /**
    /**