Fix NavigationBar overlapping with the IME window

As WindowToken#setInsetsFrozen that introduced by CL[1], [2] that used
for freezing dispathcing insets state when the app transitioning or
becoming invisible.

To prevent unnecessary app UI glitch during dispatching insets changes
while animating, the method call ends up setting frozen insets state
for all children windows.

Since forAllWindows will call forAllImeWindows to also set frozen
insets state for IME window when the window is IME layering targets
and not in split-screen windowing mode, which is not expected because
the IME window is controlled by IME insets provider and should not
have frozen insets state to make IME UI been overlapped with navbar
because of wrong insets state.

Make sure to set frozen state only for the window belongs to the same
window token.

[1]: Iae5025beaed7d70a4623b446a1bb73574d420663
[2]: I56418733c1abbd73e88a8918a5d55ecc15344c5e

Fix: 181840663
Test: manual as issue steps:
   1) Factory reset device.
   2) Skip Setup Wizard.
   3) Select a WIFI hotspot which require a password to
      show up keyboard
   4) Verify if IME layout correctly without overlapping with navbar.
Test: atest WindowTokenTests#testSetInsetsFrozen_notAffectImeWindowState
Change-Id: I9442095e833bf430f49cd824af2ab430da5d662c
2 files changed