Merge "Resume appSwitchesAllowed after exit PiP" into sc-v2-dev
This commit is contained in:
@@ -4581,14 +4581,15 @@ class Task extends TaskFragment {
|
|||||||
}
|
}
|
||||||
super.setWindowingMode(windowingMode);
|
super.setWindowingMode(windowingMode);
|
||||||
|
|
||||||
// Try reparent pinned activity back to its original task after onConfigurationChanged
|
if (currentMode == WINDOWING_MODE_PINNED && topActivity != null) {
|
||||||
// cascade finishes. This is done on Task level instead of
|
// Try reparent pinned activity back to its original task after
|
||||||
// {@link ActivityRecord#onConfigurationChanged(Configuration)} since when we exit PiP,
|
// onConfigurationChanged cascade finishes. This is done on Task level instead of
|
||||||
// we set final windowing mode on the ActivityRecord first and then on its Task when
|
// {@link ActivityRecord#onConfigurationChanged(Configuration)} since when we exit
|
||||||
// the exit PiP transition finishes. Meanwhile, the exit transition is always
|
// PiP, we set final windowing mode on the ActivityRecord first and then on its
|
||||||
// performed on its original task, reparent immediately in ActivityRecord breaks it.
|
// Task when the exit PiP transition finishes. Meanwhile, the exit transition is
|
||||||
if (currentMode == WINDOWING_MODE_PINNED) {
|
// always performed on its original task, reparent immediately in ActivityRecord
|
||||||
if (topActivity != null && topActivity.getLastParentBeforePip() != null) {
|
// breaks it.
|
||||||
|
if (topActivity.getLastParentBeforePip() != null) {
|
||||||
// Do not reparent if the pinned task is in removal, indicated by the
|
// Do not reparent if the pinned task is in removal, indicated by the
|
||||||
// force hidden flag.
|
// force hidden flag.
|
||||||
if (!isForceHidden()) {
|
if (!isForceHidden()) {
|
||||||
@@ -4601,6 +4602,11 @@ class Task extends TaskFragment {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// Resume app-switches-allowed flag when exiting from pinned mode since
|
||||||
|
// it does not follow the ActivityStarter path.
|
||||||
|
if (topActivity.shouldBeVisible()) {
|
||||||
|
mAtmService.resumeAppSwitches();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (creating) {
|
if (creating) {
|
||||||
|
|||||||
Reference in New Issue
Block a user