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

Commit d87d9e26 authored by Uwais Ashraf's avatar Uwais Ashraf
Browse files

Refresh overlay on new snapshot taken even if an old snapshot exists

Bug: 302041971
Test: Manual checking of overlay refreshes in bug repro case - live tile and select
Test: Manual checking of no additional overlay refreshes on non-live tile select
Test: Manually ensured no additional overlay refreshes while scrolling
Test: presubmit
Flag: EXEMPT bugfix
Change-Id: I5d455560d0bf816f86042078a662f06f5d1397bb
parent ec772f49
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -61,6 +61,8 @@ import com.android.systemui.shared.recents.model.Task;
import com.android.systemui.shared.recents.model.ThumbnailData;
import com.android.systemui.shared.recents.utilities.PreviewPositionHelper;

import java.util.Objects;

/**
 * A task in the Recents view.
 *
@@ -222,14 +224,16 @@ public class TaskThumbnailViewDeprecated extends View implements ViewPool.Reusab
    public void setThumbnail(@Nullable Task task, @Nullable ThumbnailData thumbnailData,
            boolean refreshNow) {
        mTask = task;
        boolean thumbnailWasNull = mThumbnailData == null;
        ThumbnailData oldThumbnailData = mThumbnailData;
        mThumbnailData = (thumbnailData != null && thumbnailData.getThumbnail() != null)
                ? thumbnailData : null;
        if (mTask != null) {
            updateSplashView(mTask.icon);
        }
        if (refreshNow) {
            refresh(thumbnailWasNull && mThumbnailData != null);
            Long oldSnapshotId = oldThumbnailData != null ? oldThumbnailData.getSnapshotId() : null;
            Long snapshotId = mThumbnailData != null ? mThumbnailData.getSnapshotId() : null;
            refresh(snapshotId != null && !Objects.equals(oldSnapshotId, snapshotId));
        }
    }