Merge "Potential fix for end callback not being run in 3-button" into udc-dev am: 606c4bfc59

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/23019205

Change-Id: I6ab89a4f13d85c02b14608e74291ba2892484d6d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Winson Chung
2023-05-09 00:17:26 +00:00
committed by Automerger Merge Worker
@@ -92,6 +92,7 @@ import com.android.launcher3.util.ViewPool.Reusable;
import com.android.quickstep.RecentsModel;
import com.android.quickstep.RemoteAnimationTargets;
import com.android.quickstep.RemoteTargetGluer.RemoteTargetHandle;
import com.android.quickstep.TaskAnimationManager;
import com.android.quickstep.TaskIconCache;
import com.android.quickstep.TaskOverlayFactory;
import com.android.quickstep.TaskThumbnailCache;
@@ -802,6 +803,14 @@ public class TaskView extends FrameLayout implements Reusable {
recentsView.addSideTaskLaunchCallback(callbackList);
return callbackList;
}
if (TaskAnimationManager.ENABLE_SHELL_TRANSITIONS) {
// If the recents transition is running (ie. in live tile mode), then the start
// of a new task will merge into the existing transition and it currently will
// not be run independently, so we need to rely on the onTaskAppeared() call
// for the new task to trigger the side launch callback to flush this runnable
// list (which is usually flushed when the app launch animation finishes)
recentsView.addSideTaskLaunchCallback(opts.onEndCallback);
}
return opts.onEndCallback;
} else {
notifyTaskLaunchFailed(TAG);