diff options
3 files changed, 20 insertions, 6 deletions
diff --git a/libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/TransitionUtil.java b/libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/TransitionUtil.java index 88878c6adcf2..e033f673d07d 100644 --- a/libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/TransitionUtil.java +++ b/libs/WindowManager/Shell/shared/src/com/android/wm/shell/shared/TransitionUtil.java @@ -360,7 +360,7 @@ public class TransitionUtil { windowConfiguration = new WindowConfiguration(); } - Rect localBounds = new Rect(); + Rect bounds = windowConfiguration.getBounds(); RemoteAnimationTarget target = new RemoteAnimationTarget( taskId, newModeToLegacyMode(mode), @@ -373,12 +373,12 @@ public class TransitionUtil { new Rect(0, 0, 0, 0), order, null, - localBounds, - new Rect(), + bounds, + bounds, windowConfiguration, isNotInRecents, null, - new Rect(), + bounds, taskInfo, false, INVALID_WINDOW_TYPE diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/ShellTaskOrganizer.java b/libs/WindowManager/Shell/src/com/android/wm/shell/ShellTaskOrganizer.java index f59fed906e2d..dfe76b8543e1 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/ShellTaskOrganizer.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/ShellTaskOrganizer.java @@ -487,6 +487,20 @@ public class ShellTaskOrganizer extends TaskOrganizer { return mHomeTaskOverlayContainer; } + /** + * Returns the home task surface, not for wide use. + */ + @Nullable + public SurfaceControl getHomeTaskSurface() { + for (int i = 0; i < mTasks.size(); i++) { + final TaskAppearedInfo info = mTasks.valueAt(i); + if (info.getTaskInfo().getActivityType() == ACTIVITY_TYPE_HOME) { + return info.getLeash(); + } + } + return null; + } + @Override public void addStartingWindow(StartingWindowInfo info) { if (mStartingWindow != null) { diff --git a/libs/WindowManager/Shell/src/com/android/wm/shell/recents/RecentsTransitionHandler.java b/libs/WindowManager/Shell/src/com/android/wm/shell/recents/RecentsTransitionHandler.java index 6d4d4b410be8..40065b9287a6 100644 --- a/libs/WindowManager/Shell/src/com/android/wm/shell/recents/RecentsTransitionHandler.java +++ b/libs/WindowManager/Shell/src/com/android/wm/shell/recents/RecentsTransitionHandler.java @@ -544,10 +544,10 @@ public class RecentsTransitionHandler implements Transitions.TransitionHandler, .findFirst() .get(); final RemoteAnimationTarget openingTarget = TransitionUtil.newSyntheticTarget( - homeTask, mShellTaskOrganizer.getHomeTaskOverlayContainer(), TRANSIT_OPEN, + homeTask, mShellTaskOrganizer.getHomeTaskSurface(), TRANSIT_OPEN, 0, true /* isTranslucent */); final RemoteAnimationTarget closingTarget = TransitionUtil.newSyntheticTarget( - homeTask, mShellTaskOrganizer.getHomeTaskOverlayContainer(), TRANSIT_CLOSE, + homeTask, mShellTaskOrganizer.getHomeTaskSurface(), TRANSIT_CLOSE, 0, true /* isTranslucent */); final ArrayList<RemoteAnimationTarget> apps = new ArrayList<>(); apps.add(openingTarget); |