Teach IMMS#shouldShowImeSwitcherLocked() about shouldShowInInputMethodPicker attr
This is a follow up CL to our previous CL [1], which introduced shouldShowInInputMethodPicker attribute then made IME picker UI be aware of it. There was a method we forgot to update in that CL: InputMethodManagerService#shouldShowImeSwitcherLocked(), which determines when the IME switcher icon is shown on the navigation bar. It should just ignore IMEs that have shouldShowInInputMethodPicker=false because those IMEs are actually not shown on the IME switcher dialog. [1]: I18dda0525168f9195606840239507b9daba65be7 43dbb549 Fix: 175480153 Fix: 186150194 Test: Manually tested as follows: 1. Build aosp_coral-userdebug and flash it. 2. Open the dialar app and focus in any input field. 3. Make sure that AOSP Keyboard shows up and the IME swicher icon is not shown on the navigation bar. 4. adb install -r \ $ANDROID_HOST_OUT/cts/android-cts/testcases/CtsHiddenFromPickerIme.apk 5. adb shell ime enable \ com.android.cts.hiddenfrompickerime/.HiddenFromPickerIme 6. Hide and show the AOSP keyboard. 7. Make sure that the IME swicher icon is still not shown. 8. adb install -r \ $ANDROID_PRODUCT_OUT/system/app/SoftKeyboard/SoftKeyboard.apk 9. adb shell ime \ enable com.example.android.softkeyboard/.SoftKeyboard 10. Hide and show the AOSP keyboard. 11. Make sure that the IME swicher icon becomes visible. Change-Id: Id4b4c208e11d574d6118c8cd2b5aa79dd5486c14
Loading
Please register or sign in to comment