Wait for leash in ImeInsetsSourceConsumer
Currently if we have an IME show request before the client has the InsetsSourceControl, we mark this in mIsRequestedVisibleAwaitingControl and re-try to show when we gain the control. However, if we gain a control without a leash, we reset this awaiting control flag, but we still cannot show. When we eventually get the control with the leash later on, the awaiting control flag is reset, so we don't actually re-try to show, when we should and could do so. This takes into account both the availability of the control, and the leash on the control, set in mIsRequestedVisibleAwaitingLeash. These should fix any timing issues due to code changes such as [1]. [1]: Ie7bb268f228ae8a8ed15e49b193aa2d0183f31ac Bug: 328374719 Test: atest ImeInsetsSourceConsumerTest#testImeRequestedVisibleAwaitingControl ImeInsetsSourceConsumerTest#testImeRequestedVisibleAwaitingLeash WindowInsetsControllerTests#testShowImeOnCreate WindowInsetsControllerTests#testShowImeOnCreate_doesntCauseImeToReappearWhenDialogIsShown Change-Id: I2fb3bf1dc057f85a9f8ad0166ec25519aa004905
Loading
Please register or sign in to comment