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

Skip to content
Commit a308e124 authored by Ming-Shin Lu's avatar Ming-Shin Lu
Browse files

Fix updateAboveInsetsState may not apply IME window in some cases

In case updateAboveInsetsState didn't apply IME window to update
app's above insets state when an edge case happens during unlocking
the device that WindowState#applyImeWindowsIfNeeded returns false
because the input target has not yet being drawn or visible,

we should keep applying the IME window to update the input target's
insets state when the input target is during unlock and in requested
visible state.

Bug: 246402296
Bug: 201987724
Test: atest InsetsStateControllerTest#\
       testUpdateAboveInsetsState_imeTargetOnScreenBehavior
Test: atest RemoteAnimationControllerTest#\
       testLaunchRemoteAnimationWithoutImeBehind
Test: manual as Bug 246402296
      1) Launch a chat app
      2) Start a chat channel to show IME
      3) Press power button to turn the screen off
      4) Press power button to turn the screen on and unlock
      5) Expect the chat activity looks fine without flickers
Test: manual as Bug 201987724
    0-1) Set secure unlock method (e.g. pattern)
    0-2) Install "Google Pay" app
    0-3) Add a payment method instruction
    1) Start Message app
    2) Click search window and wait IME window appears
    3) Hit power button to lock the device
    4) Tap screen to show Lockscreen
    5) Tap GPay icon
    6) See animation and expect there is no IME flickering behind

Change-Id: Ib43f4e2659d3afab63dc327f5f939fbd13afa5f3
parent f9ca7a2f
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