Fix IME insets animation stucked by wrong InsetsHint
There is a chance that if InsetsSourceProvider#updateControlForTarget invoked when its serverVisible not yet visible, then the insetsHint of the new InsetsSourceControl will be empty because CL[1] will set insets source frame as empty when the serverVisible is false. This would make the insetsHint of the control may not able to get updated if the source frame size is same as the last visible source frame in the next onPostLayout, that affects the insets animation will not fullly animated because of wrong InsetsHint. Add a mInsetsHint field in InsetsSourceProvider to strore the last insetsHint from onPostLayout for initializing the new source control. [1]: Ie7845de2830cdbdfd0049b8eef5a5f0704f796e8 Fix: 230581950 Bug: 229938982 Test: manual as issue steps. Test: atest InsetsStateControllTest#testGetInsetsHintForNewControl Change-Id: I0fd5845d1f816b558deeed490c93ec207e2f0607
Loading
Please register or sign in to comment