Workaround regression in multiwindow mode change callback

- Revert to O behaviour of sending same MW mode as PIP mode when updated

Bug: 112198479
Test: atest android.app.cts.TaskDescriptionTest
Change-Id: I31387b5dfb2b3f4e8f82b2ba2c26b1672fc77272
This commit is contained in:
Winson Chung
2018-08-08 16:10:20 -07:00
parent e4c7d37e03
commit 059955f992

View File

@@ -705,9 +705,13 @@ final class ActivityRecord extends ConfigurationContainer implements AppWindowCo
final boolean inPictureInPictureMode = inPinnedWindowingMode() && targetStackBounds != null;
if (inPictureInPictureMode != mLastReportedPictureInPictureMode || forceUpdate) {
// Picture-in-picture mode changes also trigger a multi-window mode change as well, so
// update that here in order
// update that here in order. Set the last reported MW state to the same as the PiP
// state since we haven't yet actually resized the task (these callbacks need to
// preceed the configuration change from the resiez.
// TODO(110009072): Once we move these callbacks to the client, remove all logic related
// to forcing the update of the picture-in-picture mode as a part of the PiP animation.
mLastReportedPictureInPictureMode = inPictureInPictureMode;
mLastReportedMultiWindowMode = inMultiWindowMode();
mLastReportedMultiWindowMode = inPictureInPictureMode;
final Configuration newConfig = task.computeNewOverrideConfigurationForBounds(
targetStackBounds, null);
schedulePictureInPictureModeChanged(newConfig);