Only allow AM to update display orientation based on app containers
Activity manager choregraphs several app states when starting an activity including when the display orientation should be updated based on the app that is now in the foreground. It is possible for a call to originate within WM after AM adds the starting app token, but before AM makes the app visible and resumed. E.g. A relayout call due to a starting window. When this happens WM can prematurely update the display orientation with incomplete information causing the starting app to be in an incorrect orientation initially. To fix this problem we now only factor in app containers (stacks, task, ..) when updating the display orientation if the call to update is coming from AM. Otherwise we only use the non-app/system containers to determine the orientation or return the last orientation. Change-Id: I431ce9260ee31257732311a548c62cbcdb27eae7 Fixes: 37550022 Test: Launch 2 apps that don't fix orientation and use the recent button to switch between them while holding the device in landscape.
Loading
Please register or sign in to comment