Restore the behavior of adding a RESUMED activity to stopping list
Revert part of 9b8ece2 because of b/169190153.
Also this makes the activity starting pausing while resuming it
if the activity is started while screen off, see
Task#resumeTopActivityInnerLocked where the RWC#ensureVisibilityAndConfig
was called after activity state set to RESUMED.
Bug: 169190153
Bug: 160435184
Test: existing tests
Change-Id: I4afdac6a60f6ad9b1c652eefcce44367109a2a37
diff --git a/services/core/java/com/android/server/wm/ActivityRecord.java b/services/core/java/com/android/server/wm/ActivityRecord.java
index 740b592..6792430 100644
--- a/services/core/java/com/android/server/wm/ActivityRecord.java
+++ b/services/core/java/com/android/server/wm/ActivityRecord.java
@@ -4770,14 +4770,14 @@
supportsEnterPipOnTaskSwitch = false;
break;
case RESUMED:
- // Do nothing if currently in the process of resuming the activity. Otherwise,
- // starting to pause it since it is not visible.
- if (!mSetToSleep) {
+ // If the app is capable of entering PIP, we should try pausing it now
+ // so it can PIP correctly.
+ if (deferHidingClient) {
+ getRootTask().startPausingLocked(
+ mStackSupervisor.mUserLeaving /* userLeaving */,
+ false /* uiSleeping */, null /* resuming */, "makeInvisible");
break;
}
- getRootTask().startPausingLocked(mStackSupervisor.mUserLeaving,
- false /* uiSleeping */, null /* resuming */, "makeInvisible");
- // fall through
case INITIALIZING:
case PAUSING:
case PAUSED: