Crop the surface using the rect hint before animating out of PIP
While transitioning from PIP->Fullscreen the surface is uncroped and scaled using the source rect hint from the PIP position to the destination bounds (fullscreen). The animation controller creates its own SurfaceControl.Transaction to apply the scale and crop to the surface, which means that the transform is not applied until the next frame. To avoid this bad frame, apply the initial surface control transaction again after starting the animation using the SurfaceControl.Transaction supplied by the SyncTransactionQueue callback. Bug: 184166183 Test: Enter PIP with YT, exit to fullscreen and verify there's no jank/flash Change-Id: I4e4ba51be03aa86e0629e8d6532c0c4098c21aed
Loading
Please register or sign in to comment