Merge "Check for PIPable activities after moving task to back." into rvc-dev am: 144ba12233
Change-Id: Ie1569790b168a9a2fbc92ced8bea5a98dbd250f9
This commit is contained in:
@@ -4620,7 +4620,7 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
|
||||
// the current contract for "auto-Pip" is that the app should enter it before onPause
|
||||
// returns. Just need to confirm this reasoning makes sense.
|
||||
final boolean deferHidingClient = canEnterPictureInPicture
|
||||
&& !isState(STOPPING, STOPPED, PAUSED);
|
||||
&& !isState(STARTED, STOPPING, STOPPED, PAUSED);
|
||||
setDeferHidingClient(deferHidingClient);
|
||||
setVisibility(false);
|
||||
|
||||
@@ -4631,9 +4631,16 @@ final class ActivityRecord extends WindowToken implements WindowManagerService.A
|
||||
// activity is hidden
|
||||
supportsEnterPipOnTaskSwitch = false;
|
||||
break;
|
||||
|
||||
case INITIALIZING:
|
||||
case RESUMED:
|
||||
// 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 */);
|
||||
break;
|
||||
}
|
||||
case INITIALIZING:
|
||||
case PAUSING:
|
||||
case PAUSED:
|
||||
case STARTED:
|
||||
|
||||
@@ -2676,9 +2676,9 @@ class ActivityStack extends Task {
|
||||
mRootWindowContainer.ensureVisibilityAndConfig(null /* starting */,
|
||||
getDisplay().mDisplayId, false /* markFrozenIfConfigChanged */,
|
||||
false /* deferResume */);
|
||||
} else {
|
||||
mRootWindowContainer.resumeFocusedStacksTopActivities();
|
||||
}
|
||||
|
||||
mRootWindowContainer.resumeFocusedStacksTopActivities();
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user