summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTony Wickham <twickham@google.com>2023-12-13 05:36:03 +0000
committerTony Wickham <twickham@google.com>2023-12-13 19:59:08 +0000
commit1e60b1a4c441459f80ba7ecc894664463a3b6e1c (patch)
tree2a097e41c956811a165c45ecb5c1ef3c0862732e
parent5a26b1ce0f6d5f0c5fb81dff78d391c295ad9141 (diff)
downloadLauncher3-1e60b1a4c441459f80ba7ecc894664463a3b6e1c.tar.gz
Fix layering issue when launching from side TaskView
Fully reverted the change in ag/24840504, and instead make use of prefixOrderIndex to ensure translucent overlays launch on top of the underlying task. Test: Swipe up from an app to Overview (phone), scroll over one task, click on the live tile you came from; ensure animates well Test: Open an app, launch a translucent overlay, e.g. Volume Dialog, swipe up to Overview and relaunch the live tasks; ensure the overlay stays on top throughout the animation Fixes: 310765248 Flag: ACONFIG com.android.launcher3.enable_grid_only_overview TEAMFOOD Change-Id: I0708bf3c060ba84089722d0bd9480a4f4bd2b8e2
-rw-r--r--quickstep/src/com/android/quickstep/util/TaskViewSimulator.java13
-rw-r--r--quickstep/src/com/android/quickstep/views/TaskView.java3
2 files changed, 10 insertions, 6 deletions
diff --git a/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java b/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java
index 5d8e53efe7..baaa062e97 100644
--- a/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java
+++ b/quickstep/src/com/android/quickstep/util/TaskViewSimulator.java
@@ -427,9 +427,16 @@ public class TaskViewSimulator implements TransformParams.BuilderProxy {
// conflict with layers that WM core positions (ie. the input consumers). For shell
// transitions, the animation leashes are reparented to an animation container so we
// can bump layers as needed.
- builder.setLayer(mDrawsBelowRecents
- ? Integer.MIN_VALUE + app.prefixOrderIndex
- : ENABLE_SHELL_TRANSITIONS ? Integer.MAX_VALUE : 0);
+ if (ENABLE_SHELL_TRANSITIONS) {
+ builder.setLayer(mDrawsBelowRecents
+ ? Integer.MIN_VALUE + app.prefixOrderIndex
+ // 1000 is an arbitrary number to give room for multiple layers.
+ : Integer.MAX_VALUE - 1000 + app.prefixOrderIndex);
+ } else {
+ builder.setLayer(mDrawsBelowRecents
+ ? Integer.MIN_VALUE + app.prefixOrderIndex
+ : 0);
+ }
}
}
diff --git a/quickstep/src/com/android/quickstep/views/TaskView.java b/quickstep/src/com/android/quickstep/views/TaskView.java
index af4f402f07..5041a76db8 100644
--- a/quickstep/src/com/android/quickstep/views/TaskView.java
+++ b/quickstep/src/com/android/quickstep/views/TaskView.java
@@ -1062,9 +1062,6 @@ public class TaskView extends FrameLayout implements Reusable {
anim.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationStart(Animator animation) {
- if (!recentsView.showAsGrid()) {
- return;
- }
recentsView.runActionOnRemoteHandles(
(Consumer<RemoteTargetHandle>) remoteTargetHandle ->
remoteTargetHandle