commit | 623e3588b9ba66d09da10ab7ce91c25b734d7322 | [log] [tgz] |
---|---|---|
author | Mateusz Cicheński <[email protected]> | Sat Feb 03 00:22:30 2024 +0000 |
committer | Mateusz Cicheński <[email protected]> | Tue Feb 06 02:52:27 2024 +0000 |
tree | db895fb5f73ec615181097634cfc961bad2fdcf6 | |
parent | 862b59b91de0833bdf6d6ce9c08403fe183ae4e4 [diff] |
Scaling PiP proportionally on screen rotation and fold/unfold The end bounds are stored in PipBoundsState and the transition system does not have knowledge of the proportional resize, so the value in pipChange.getEndAbsBounds() is not the correct one. Updating the rotation handler to correctly update the scale and max size in OnDisplayChangingListener, so that all future calculations are using the updated values for scale/max size. Since the value has been cached locally in PipBoundsState, having stale invocations would lead to artifacts such as PiP resizing in unexpected way upon screen rotation or during fixed rotation enter PiP animation. Test: manually Test: atest EnterPipToOtherOrientation Test: 3 button nav rotation http://recall/-/ekEuGtt9d9HWqkUtAzpHx8/gxlk5IJSb0gVojnPfJvMxY Test: gesture nav rotation http://recall/-/ekEuGtt9d9HWqkUtAzpHx8/ga3gIHEOVatMVTr6WXQnNX Test: 3 button nav fixed rotation enter pip http://recall/-/ekEuGtt9d9HWqkUtAzpHx8/8A94b9HbYXvtlEuU8KQO5 Test: gesture nav fixed rotation enter pip http://recall/-/ekEuGtt9d9HWqkUtAzpHx8/gcJsqm3Hu3RaYagOapDXsS Bug: 322091225 Bug: 319083003 Bug: 308093519 Bug: 323789757 Flag: none Change-Id: Idc1429577da5c1817fe2f4ad12cefc32e0e86dd6