Don't hold wm lock when intercepting keys

We need to check the window type and some private flags to figure out if we should
intercept the home key. Instead of holding checking the WindowState associated with
the window token, check a separate map that contains a snapshot of the relevant info.

Bug: 134365580

Test: atest KeyboardInterceptorTest
Test: go/wm-smoke
Test: home key works
Change-Id: Ica60cef649754095f5c1ed6204a9b1581a07bfc6
10 files changed