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: