diff options
5 files changed, 8 insertions, 6 deletions
diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java index 13c47251b9af..9353cede49b2 100644 --- a/services/core/java/com/android/server/wm/DisplayContent.java +++ b/services/core/java/com/android/server/wm/DisplayContent.java @@ -5613,8 +5613,8 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp * @see AppTransition#prepareAppTransition */ void requestTransitionAndLegacyPrepare(@WindowManager.TransitionType int transit, - @WindowManager.TransitionFlags int flags) { - mTransitionController.requestTransitionIfNeeded(transit, flags, null /* trigger */, this); + @WindowManager.TransitionFlags int flags, @Nullable WindowContainer trigger) { + mTransitionController.requestTransitionIfNeeded(transit, flags, trigger, this); } void executeAppTransition() { diff --git a/services/core/java/com/android/server/wm/KeyguardController.java b/services/core/java/com/android/server/wm/KeyguardController.java index 6091b8334438..6d73739e5046 100644 --- a/services/core/java/com/android/server/wm/KeyguardController.java +++ b/services/core/java/com/android/server/wm/KeyguardController.java @@ -250,7 +250,7 @@ class KeyguardController { // to the locked state before holding the sleep token again if (!ENABLE_NEW_KEYGUARD_SHELL_TRANSITIONS) { dc.requestTransitionAndLegacyPrepare( - TRANSIT_TO_FRONT, TRANSIT_FLAG_KEYGUARD_APPEARING); + TRANSIT_TO_FRONT, TRANSIT_FLAG_KEYGUARD_APPEARING, /* trigger= */ null); } dc.mWallpaperController.adjustWallpaperWindows(); dc.executeAppTransition(); diff --git a/services/core/java/com/android/server/wm/Task.java b/services/core/java/com/android/server/wm/Task.java index 8e5e2f311489..6cd1336122be 100644 --- a/services/core/java/com/android/server/wm/Task.java +++ b/services/core/java/com/android/server/wm/Task.java @@ -5480,7 +5480,8 @@ class Task extends TaskFragment { Slog.w(TAG, " Force finishing activity " + r.intent.getComponent().flattenToShortString()); Task finishedTask = r.getTask(); - mDisplayContent.requestTransitionAndLegacyPrepare(TRANSIT_CLOSE, TRANSIT_FLAG_APP_CRASHED); + mDisplayContent.requestTransitionAndLegacyPrepare(TRANSIT_CLOSE, TRANSIT_FLAG_APP_CRASHED, + finishedTask); r.finishIfPossible(reason, false /* oomAdj */); // Also terminate any activities below it that aren't yet stopped, to avoid a situation diff --git a/services/core/java/com/android/server/wm/WindowProcessController.java b/services/core/java/com/android/server/wm/WindowProcessController.java index b2d28a369edc..270de0197a4e 100644 --- a/services/core/java/com/android/server/wm/WindowProcessController.java +++ b/services/core/java/com/android/server/wm/WindowProcessController.java @@ -482,8 +482,9 @@ public class WindowProcessController extends ConfigurationContainer<Configuratio r.detachFromProcess(); if (r.isVisibleRequested()) { hasVisibleActivity = true; + Task finishingTask = r.getTask(); r.mDisplayContent.requestTransitionAndLegacyPrepare(TRANSIT_CLOSE, - TRANSIT_FLAG_APP_CRASHED); + TRANSIT_FLAG_APP_CRASHED, finishingTask); } r.destroyIfPossible("handleAppCrashed"); } diff --git a/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java b/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java index 181853066f7b..9c483846217b 100644 --- a/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java @@ -1821,7 +1821,7 @@ public class DisplayContentTests extends WindowTestsBase { .setTask(nonTopVisible.getTask()).setVisible(false) .setActivityTheme(android.R.style.Theme_Translucent).build(); final TestTransitionPlayer player = registerTestTransitionPlayer(); - mDisplayContent.requestTransitionAndLegacyPrepare(WindowManager.TRANSIT_OPEN, 0); + mDisplayContent.requestTransitionAndLegacyPrepare(WindowManager.TRANSIT_OPEN, 0, null); translucentTop.setVisibility(true); mDisplayContent.updateOrientation(); assertEquals("Non-top visible activity must be portrait", |