summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Chris Li <lihongyu@google.com> 2023-07-26 00:54:20 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2023-07-26 00:54:20 +0000
commit30f6d64786fc8ae39fd34ee84f61e6aea11b6414 (patch)
tree3fe696301b9de06f613a9bc7266c9d65a6d1b1e7
parentfa72fa45a654070c6e579320fa2773c2faf35eac (diff)
parent7181301a2b2a6b43edcdc3d200f85a45060b0f97 (diff)
Merge "Avoid recursion for leaf task fragment in freeform mode" into main
-rw-r--r--services/core/java/com/android/server/wm/TaskFragment.java12
1 files changed, 2 insertions, 10 deletions
diff --git a/services/core/java/com/android/server/wm/TaskFragment.java b/services/core/java/com/android/server/wm/TaskFragment.java
index d94716887247..15bc60c38b01 100644
--- a/services/core/java/com/android/server/wm/TaskFragment.java
+++ b/services/core/java/com/android/server/wm/TaskFragment.java
@@ -1089,21 +1089,13 @@ class TaskFragment extends WindowContainer<WindowContainer> {
}
final int otherWindowingMode = other.getWindowingMode();
- if (otherWindowingMode == WINDOWING_MODE_FULLSCREEN) {
- if (isTranslucent(other, starting)) {
- // Can be visible behind a translucent fullscreen TaskFragment.
- gotTranslucentFullscreen = true;
- continue;
- }
- return TASK_FRAGMENT_VISIBILITY_INVISIBLE;
- } else if (otherWindowingMode == WINDOWING_MODE_MULTI_WINDOW
- && other.matchParentBounds()) {
+ if (otherWindowingMode == WINDOWING_MODE_FULLSCREEN
+ || (otherWindowingMode != WINDOWING_MODE_PINNED && other.matchParentBounds())) {
if (isTranslucent(other, starting)) {
// Can be visible behind a translucent TaskFragment.
gotTranslucentFullscreen = true;
continue;
}
- // Multi-window TaskFragment that matches parent bounds would occlude other children
return TASK_FRAGMENT_VISIBILITY_INVISIBLE;
}