Implement seamless rotation mode.
Add a rotation mode which does not require freezing the screen. For situations like Camera where only small elements move on screen, this allows for seamless changes of display orientation. This is achieved by transforming the windows with their current buffer in the same transaction that we rotate the display. We set things up so the windows are frozen this way until they submit buffers in the new orientation. There is a special case in the Camera window itself, and it's use of NATIVE_WINDOW_TRANSFORM_INVERSE_DISPLAY. In this case the buffer contents are rotated by SurfaceFlinger and will never resize, for these windows we just need to update the scaling matrix. Bug: 28823590 Change-Id: I52dc6a86fcb3c08f736f0977ba3975a24fb8136c
Loading
Please register or sign in to comment