diff options
| -rw-r--r-- | services/core/java/com/android/server/wm/ActivityRecord.java | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/services/core/java/com/android/server/wm/ActivityRecord.java b/services/core/java/com/android/server/wm/ActivityRecord.java index 746bc0eaff3c..8f2e60ec1f08 100644 --- a/services/core/java/com/android/server/wm/ActivityRecord.java +++ b/services/core/java/com/android/server/wm/ActivityRecord.java @@ -4761,15 +4761,14 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A 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 (task.mInResumeTopActivity - && task.topRunningActivity(true /* focusableOnly */) == this) { + // 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: |