diff --git a/services/core/java/com/android/server/wm/AppTransitionController.java b/services/core/java/com/android/server/wm/AppTransitionController.java index 7e62c61572d6d..2ea6a3f14f642 100644 --- a/services/core/java/com/android/server/wm/AppTransitionController.java +++ b/services/core/java/com/android/server/wm/AppTransitionController.java @@ -467,16 +467,6 @@ public class AppTransitionController { return TRANSIT_OLD_WALLPAPER_OPEN; } - // Some devices don't show a wallpaper. In that case we should still trigger wallpaper - // transitions when animating to/from the home activity - if (wallpaperTarget == null) { - if (topOpeningApp != null && topOpeningApp.isActivityTypeHome()) { - return TRANSIT_OLD_WALLPAPER_OPEN; - } else if (topClosingApp != null && topClosingApp.isActivityTypeHome()) { - return TRANSIT_OLD_WALLPAPER_CLOSE; - } - } - final ArraySet openingWcs = getAnimationTargets( openingApps, closingApps, true /* visible */); final ArraySet closingWcs = getAnimationTargets( @@ -488,6 +478,11 @@ public class AppTransitionController { @TransitContainerType int openingType = getTransitContainerType(openingContainer); @TransitContainerType int closingType = getTransitContainerType(closingContainer); if (appTransition.containsTransitRequest(TRANSIT_TO_FRONT) && openingType == TYPE_TASK) { + if (topOpeningApp != null && topOpeningApp.isActivityTypeHome()) { + // If we are opening the home task, we want to play an animation as if + // the task on top is being brought to back. + return TRANSIT_OLD_TASK_TO_BACK; + } return TRANSIT_OLD_TASK_TO_FRONT; } if (appTransition.containsTransitRequest(TRANSIT_TO_BACK) && closingType == TYPE_TASK) {