Merge "Apply PiP Params if there was a deferred info." into tm-dev

This commit is contained in:
Ben Lin
2022-05-18 18:02:09 +00:00
committed by Android (Google) Code Review
2 changed files with 16 additions and 2 deletions

View File

@@ -1096,11 +1096,13 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener,
* Handles all changes to the PictureInPictureParams.
*/
protected void applyNewPictureInPictureParams(@NonNull PictureInPictureParams params) {
if (PipUtils.aspectRatioChanged(params.getAspectRatioFloat(),
if (mDeferredTaskInfo != null || PipUtils.aspectRatioChanged(params.getAspectRatioFloat(),
mPictureInPictureParams.getAspectRatioFloat())) {
mPipParamsChangedForwarder.notifyAspectRatioChanged(params.getAspectRatioFloat());
}
if (PipUtils.remoteActionsChanged(params.getActions(), mPictureInPictureParams.getActions())
if (mDeferredTaskInfo != null
|| PipUtils.remoteActionsChanged(params.getActions(),
mPictureInPictureParams.getActions())
|| !PipUtils.remoteActionsMatch(params.getCloseAction(),
mPictureInPictureParams.getCloseAction())) {
mPipParamsChangedForwarder.notifyActionsChanged(params.getActions(),

View File

@@ -123,6 +123,18 @@ class ExpandPipOnDoubleClickTest(testSpec: FlickerTestParameter) : PipTransition
}
}
@Presubmit
@Test
fun pipSameAspectRatio() {
val layerName = pipApp.component.toLayerName()
testSpec.assertLayers {
val pipLayerList = this.layers { it.name.contains(layerName) && it.isVisible }
pipLayerList.zipWithNext { previous, current ->
current.visibleRegion.isSameAspectRatio(previous.visibleRegion)
}
}
}
/**
* Checks [pipApp] window remains pinned throughout the animation
*/