Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit 3c83ef19 authored by Riddle Hsu's avatar Riddle Hsu
Browse files

Sync insets leash position with shell seamless rotation

With shell transition, the individual seamless rotated windows
are managed by AsyncRotationController. When the window is drawn
in new rotation, its seamless transformation will be cleared to
fit in new screen coordinate. If the update of insets surface
position is in a different transaction, the position may be updated
before restoring the transformation. That causes the window to show
at a weird position.

Instead of using legacy startSeamlessRotation/finishSeamlessRotation
of InsetsSourceProvider which stops the insets animation, the
synchronization can be done by merging the transaction to the one
that will update the transformation. This may be also more efficiency
because no need to remove/recreate the leash.

Bug: 223396866
Test: Use 3-button navigation.
      Launch landscape app from portrait launcher.
      The navigation bar should not disappear for a split second.
Change-Id: I51ebd9f2c90b2b4d12f77d1361acc66ab7777b38
parent e7b17199
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment