summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author TreeHugger Robot <treehugger-gerrit@google.com> 2023-07-20 06:54:22 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2023-07-20 06:54:22 +0000
commit1e68575dd570a604d28acebb474f337a1a38090c (patch)
tree16513bfb137cfa4d0bb807bb94ef72ad46137838
parentb2c12cea96088e5ab8c970af96c27b4f38fbec2e (diff)
parent20f56747b3479957d652e455c3e44b2aabdd5370 (diff)
Merge "Request transition when PIP is removed" into udc-qpr-dev
-rw-r--r--services/core/java/com/android/server/wm/ActivityTaskSupervisor.java3
-rw-r--r--services/core/java/com/android/server/wm/Task.java4
2 files changed, 6 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java b/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java
index 50948e1cdec4..5553600b403f 100644
--- a/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java
+++ b/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java
@@ -2201,7 +2201,8 @@ public class ActivityTaskSupervisor implements RecentTasks.Callbacks {
displaySwapping |= s.isDisplaySleepingAndSwapping();
ProtoLog.v(WM_DEBUG_STATES, "Stopping %s: nowVisible=%b animating=%b "
+ "finishing=%s", s, s.nowVisible, animating, s.finishing);
- if ((!animating && !displaySwapping) || mService.mShuttingDown) {
+ if ((!animating && !displaySwapping) || mService.mShuttingDown
+ || s.getRootTask().isForceHiddenForPinnedTask()) {
if (!processPausingActivities && s.isState(PAUSING)) {
// Defer processing pausing activities in this iteration and reschedule
// a delayed idle to reprocess it again
diff --git a/services/core/java/com/android/server/wm/Task.java b/services/core/java/com/android/server/wm/Task.java
index 9c23beb21a92..c5e5b1de6f83 100644
--- a/services/core/java/com/android/server/wm/Task.java
+++ b/services/core/java/com/android/server/wm/Task.java
@@ -4504,6 +4504,10 @@ class Task extends TaskFragment {
return mForceHiddenFlags != 0;
}
+ boolean isForceHiddenForPinnedTask() {
+ return (mForceHiddenFlags & FLAG_FORCE_HIDDEN_FOR_PINNED_TASK) != 0;
+ }
+
@Override
protected boolean isForceTranslucent() {
return mForceTranslucent;