From e0a9fcc642b37c08decfd6cd468fe48643cc0c82 Mon Sep 17 00:00:00 2001 From: Wei Sheng Shih Date: Wed, 19 Mar 2025 23:43:48 -0700 Subject: Revert^2 "Remove DepartingAnimationTarget from BackMotionEvent" This would create another SurfaceControl object through IPC, which is unnecessary because the animation should run through BackAnimationRunner. Flag: com.android.window.flags.remove_depart_target_from_motion Bug: 395035430 Test: execute back-to-home transition several times, verify no predict_back animation leash left in offscreen layer. Change-Id: Ic9c24402a3e121be98251965ede375ad61991e4e --- .../Shell/src/com/android/wm/shell/back/BackAnimationController.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'libs') diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java b/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java index 5d59af940da0..e29e98562cfa 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/back/BackAnimationController.java @@ -1045,7 +1045,8 @@ public class BackAnimationController implements RemoteCallable mShellExecutor.execute(this::onBackAnimationFinished)); if (mApps.length >= 1) { - BackMotionEvent startEvent = mCurrentTracker.createStartEvent(mApps[0]); + BackMotionEvent startEvent = mCurrentTracker.createStartEvent( + Flags.removeDepartTargetFromMotion() ? null : mApps[0]); dispatchOnBackStarted(mActiveCallback, startEvent); if (startEvent.getSwipeEdge() == EDGE_NONE) { // TODO(b/373544911): onBackStarted is dispatched here so that -- cgit v1.2.3-59-g8ed1b