diff --git a/services/core/java/com/android/server/wm/AppWindowToken.java b/services/core/java/com/android/server/wm/AppWindowToken.java index 85436da8dab71..56c9e51d5d3a8 100644 --- a/services/core/java/com/android/server/wm/AppWindowToken.java +++ b/services/core/java/com/android/server/wm/AppWindowToken.java @@ -1660,6 +1660,10 @@ class AppWindowToken extends WindowToken implements WindowManagerService.AppFree true /* topToBottom */); } + SurfaceControl getAppAnimationLayer() { + return getAppAnimationLayer(needsZBoost()); + } + @Override public SurfaceControl getAnimationLeashParent() { // All normal app transitions take place in an animation layer which is below the pinned @@ -1855,7 +1859,7 @@ class AppWindowToken extends WindowToken implements WindowManagerService.AppFree leash.setLayer(layer); final DisplayContent dc = getDisplayContent(); - dc.assignStackOrdering(t); + dc.assignStackOrdering(); if (mAnimatingAppWindowTokenRegistry != null) { mAnimatingAppWindowTokenRegistry.notifyStarting(this); } diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java index a7eac55562217..2ffdbfd4c6465 100644 --- a/services/core/java/com/android/server/wm/DisplayContent.java +++ b/services/core/java/com/android/server/wm/DisplayContent.java @@ -3180,6 +3180,7 @@ class DisplayContent extends WindowContainer extends ConfigurationContainer< } /** + * @param boosted If true, returns an animation layer that happens above all {@link TaskStack}s + * Otherwise, the layer will be positioned above all animating + * {@link TaskStack}s. * @return The layer on which all app animations are happening. */ - SurfaceControl getAppAnimationLayer() { + SurfaceControl getAppAnimationLayer(boolean boosted) { final WindowContainer parent = getParent(); if (parent != null) { - return parent.getAppAnimationLayer(); + return parent.getAppAnimationLayer(boosted); } return null; }