diff options
| author | 2023-09-12 03:03:29 +0000 | |
|---|---|---|
| committer | 2023-09-12 03:03:29 +0000 | |
| commit | d8c72d93c1920451f202ce9af666e08e4525c216 (patch) | |
| tree | 3c0cc8185acaa35bc52dc02ffb0bfb62b34c9ecb | |
| parent | bbfadc8a02d65148d44c60300b6742f5fa3ee23e (diff) | |
| parent | bc12ac94379bec50e4bb17388f46977f8e9f5bed (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.java | 12 |
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 */, |