Always hides IME when launching Permission dialog activity
As the Permission dialog activity window is just a normal application window rather than the overlay, even it will hide non-system overlay window when it starts, but not including the IME window. It could be covered by IME when the app was in multi-windowing mode that IME z-ordering will be the top-most the display across apps window (e.g. showing IME on split-screen in landscape mode). As a result, it would be make more sense to hide IME always by adding "stateAlwaysHidden" windowSoftInputMode in GrantPermissionActivity when it launch. Also add "adjustNothing" flag in case seeing the activity may flicker by the activity being panned by IME insets during launching. And remove ALT_FOCUSABLE_IM flag by CL[1] to ensure windowSoftInputMode flags takes the effect. [1]: Ia6d761d6bdd5f3e759891d6da4efcbff8d6e4002 Fix: 265834504 Test: manual with below steps 0) Request permission setup: choose any app (e.g. youtube) in Settings > Apps > App info. In "App permissions", choose Microphone permission -> select "Ask every time" to always launch permission dialog activity. 1) Entering split-screen mode or ActivityEmbedings mode for the large screen devices (e.g. launch chrome & youtube app) 2) In youtube tapping the search bar to show IME, then taping the mic. icon, expects the permission dialog activity is shown. 3) Verify if the IME will hidden after dialog activity was shown. 4) Press back key to dismiss the permission dialog activity, expects the IME will visible after focusing back to the youbute. Change-Id: I7e09cd95d5f864e59cc8243780e0d4750f812336
Loading
Please register or sign in to comment