Reset crop after finished transition
In case when in landcape mode, starting an activity transition with DefaultTransitionHandler#startSurfaceAnimation to set crop that affected the app surface, and seeing the "cropped" half app surface after rotating to portrait mode, In Transition#buildFinishTransaction, we should reset the crop to the target parent's requested overrided bound after finished transition and re-parented back into the hierarchy to fix this bad state. Also, ensure to not set crop on the display in case seeing the cropped content during the display rotation, and use parent's overrided bound to crop the activity in case we cropped the letterbox area for fixed-orientation activity. Fix: 223396859 Test: manual as steps: Issue case: 1) Launch messages app 2) Tap the editor to show IME and enter the search page 3) Rotate device to landscape mode 4) Press back button on the search bar to close search page 5) Rotate device to portrait mode, expect the app surface should not be cropped Full app/split-screen case: 1) Launch message app (or another app like chrome in split-screen) 2) Rotate device from portrait to landscape mode (or landscape to portrait) 3) Expect no cropped content during animating Fix orientation app in split-screen case: 0) Settings -> "Enable non-resizable in multi window" in developer option 1) Launch camera and message in split-screen mode 2) Rotate device from portrait to landscape mode (or landscape to portrait) 3) Expect no cropped content during animating Change-Id: Idb10df39e6947b7a3f4d67e7ef2826bd83108ab3
Loading
Please register or sign in to comment