summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Robin Lee <rgl@google.com> 2023-09-12 03:03:29 +0000
committer Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> 2023-09-12 03:03:29 +0000
commitd8c72d93c1920451f202ce9af666e08e4525c216 (patch)
tree3c0cc8185acaa35bc52dc02ffb0bfb62b34c9ecb
parentbbfadc8a02d65148d44c60300b6742f5fa3ee23e (diff)
parentbc12ac94379bec50e4bb17388f46977f8e9f5bed (diff)
Merge "Don't skip resume on transient-launch activity" into udc-d1-dev am: bc12ac9437
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/24704763 Change-Id: I2ec7e981c048be32613b0977f5f7a769342fbd14 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--services/core/java/com/android/server/wm/TaskFragment.java12
1 files changed, 5 insertions, 7 deletions
diff --git a/services/core/java/com/android/server/wm/TaskFragment.java b/services/core/java/com/android/server/wm/TaskFragment.java
index 7d0f58e7efef..9f020e8bbe56 100644
--- a/services/core/java/com/android/server/wm/TaskFragment.java
+++ b/services/core/java/com/android/server/wm/TaskFragment.java
@@ -1154,7 +1154,7 @@ class TaskFragment extends WindowContainer<WindowContainer> {
}
final boolean resumeTopActivity(ActivityRecord prev, ActivityOptions options,
- boolean deferPause) {
+ boolean skipPause) {
ActivityRecord next = topRunningActivity(true /* focusableOnly */);
if (next == null || !next.canResumeByCompat()) {
return false;
@@ -1162,11 +1162,9 @@ class TaskFragment extends WindowContainer<WindowContainer> {
next.delayedResume = false;
- // If we are currently pausing an activity, then don't do anything until that is done.
- final boolean allPausedComplete = mRootWindowContainer.allPausedActivitiesComplete();
- if (!allPausedComplete) {
- ProtoLog.v(WM_DEBUG_STATES,
- "resumeTopActivity: Skip resume: some activity pausing.");
+ if (!skipPause && !mRootWindowContainer.allPausedActivitiesComplete()) {
+ // If we aren't skipping pause, then we have to wait for currently pausing activities.
+ ProtoLog.v(WM_DEBUG_STATES, "resumeTopActivity: Skip resume: some activity pausing.");
return false;
}
@@ -1230,7 +1228,7 @@ class TaskFragment extends WindowContainer<WindowContainer> {
lastResumed = lastFocusedRootTask.getTopResumedActivity();
}
- boolean pausing = !deferPause && taskDisplayArea.pauseBackTasks(next);
+ boolean pausing = !skipPause && taskDisplayArea.pauseBackTasks(next);
if (mResumedActivity != null) {
ProtoLog.d(WM_DEBUG_STATES, "resumeTopActivity: Pausing %s", mResumedActivity);
pausing |= startPausing(mTaskSupervisor.mUserLeaving, false /* uiSleeping */,