Place window at top when adding by base layer
When addAppWindowToListLocked defaults to adding based on mBaseLayer it went from the lowest window to the highest window looking for a window whose base layer was larger and dropping the new window below that window. If the Home activity is the InputMethodTarget then when the home ActivityStack moves to the back the InputMethod will follow. This puts the InputMethod, with it's high base layer value below most activities. If a new activity window is added using the mBaseLayer rule above it was placed at the bottom of the window list below the InputMethod window. Being at the bottom it never received focus and input to the activity timed out causing ANR. This change starts the mBaseLayer search at the top window and works its way down looking for the first window whose mBaseLayer is less than or equal to the new window's mBaseLayer and inserting the new window above that window. This causes it to be placed at the top of all activities even if the InputMethod is near the bottom. Fixes bug 17721767. Change-Id: I037064de7604b670841e985479eb5857b47af1d7
Loading
Please register or sign in to comment