summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTreeHugger Robot <treehugger-gerrit@google.com>2020-02-16 11:37:32 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2020-02-16 11:37:32 +0000
commitcce9df2afc3edc9a58a97dbd3746c5d2acb217a9 (patch)
tree2c5e172eabed19dcd8b6abfd734322cd4432361d
parent02b797b3f9e788b8188f498f16722833bbf67011 (diff)
parentae078778c8ed07f0489d18d937a8837593589b43 (diff)
Merge "Fix animation when launching AppInfo in LiveTile task"
-rw-r--r--services/core/java/com/android/server/wm/AppTransitionController.java6
-rw-r--r--services/core/java/com/android/server/wm/RecentsAnimationController.java6
2 files changed, 9 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/wm/AppTransitionController.java b/services/core/java/com/android/server/wm/AppTransitionController.java
index f72020ea8988..3f4e79162ed9 100644
--- a/services/core/java/com/android/server/wm/AppTransitionController.java
+++ b/services/core/java/com/android/server/wm/AppTransitionController.java
@@ -713,7 +713,11 @@ public class AppTransitionController {
final WindowState wallpaperTarget = mWallpaperControllerLocked.getWallpaperTarget();
final boolean showWallpaper = wallpaperTarget != null
- && (wallpaperTarget.mAttrs.flags & FLAG_SHOW_WALLPAPER) != 0;
+ && ((wallpaperTarget.mAttrs.flags & FLAG_SHOW_WALLPAPER) != 0
+ // Update task open transition to wallpaper transition when wallpaper is visible.
+ // (i.e.launching app info activity from recent tasks)
+ || ((transit == TRANSIT_TASK_OPEN || transit == TRANSIT_TASK_TO_FRONT)
+ && mWallpaperControllerLocked.isWallpaperVisible()));
// If wallpaper is animating or wallpaperTarget doesn't have SHOW_WALLPAPER flag set,
// don't consider upgrading to wallpaper transition.
final WindowState oldWallpaper =
diff --git a/services/core/java/com/android/server/wm/RecentsAnimationController.java b/services/core/java/com/android/server/wm/RecentsAnimationController.java
index be68c5dc3796..634d7e996481 100644
--- a/services/core/java/com/android/server/wm/RecentsAnimationController.java
+++ b/services/core/java/com/android/server/wm/RecentsAnimationController.java
@@ -742,8 +742,10 @@ public class RecentsAnimationController implements DeathRecipient {
}
boolean isWallpaperVisible(WindowState w) {
- return w != null && w.mAttrs.type == TYPE_BASE_APPLICATION && w.mActivityRecord != null
- && mTargetActivityRecord == w.mActivityRecord && isTargetOverWallpaper();
+ return w != null && w.mAttrs.type == TYPE_BASE_APPLICATION &&
+ ((w.mActivityRecord != null && mTargetActivityRecord == w.mActivityRecord)
+ || isAnimatingTask(w.getTask()))
+ && isTargetOverWallpaper();
}
/**