Enable IMS#canImeRenderGesturalNavButtons() by default (3rd try)
This is the third attempt to enable IMS#canImeRenderGesturalNavButtons() by default. The first attempt [1] was reverted due to Bug 217668258. The second attempt [2] was reverted due to Bug 219604375 and Bug 218322263. With this CL, the back button and IME switcher button on the navigation bar are rendered by the IME when gestural navigation mode is enabled. The new behavior can still be manually disabled as follows adb root adb shell setprop \ persist.sys.ime.can_render_gestural_nav_buttons false adb reboot The only observable behavior change we are aware of is that now those buttons are included in the task screenshot in Recents. Other than that, there should be no observable behavior change. [1]: I45e511f5cfec93cdd002d23c091b4fe735b28227 793e1527 [2]: I39f454a2d41d7d5255b8cc4f7d9a3f7a7642b2f3 f21d2115 Fix: 215545985 Test: Manually tested with ThemedNavBarKeyboard sample 1. Build aosp_coral-userdebug and flash it 2. Enable gesture navigation mode. 3. make -j ThemedNavBarKeyboard 4. adb install -r \ $OUT/system/app/ThemedNavBarKeyboard/ThemedNavBarKeyboard.apk 5. adb shell ime enable \ com.example.android.themednavbarkeyboard/.ThemedNavBarKeyboard 6. adb shell ime set \ com.example.android.themednavbarkeyboard/.ThemedNavBarKeyboard 7. Open the Dialer app 8. Tap "EXTENDED LIGHT NAVIGARION BAR" mode 9. Make sure that the navigation button color is optimized for light navigation bar. 10. Tap "STANDARD LIGHT NAVIGARION BAR" mode 11. Make sure that the navigation button color is optimized for light navigation bar. 12. Tap "FLOATING MODE" mode 13. Make sure that the navigation buttons are visible. Test: Manually verified as follows. 1. Build coral-userdebug and flash it 2. Make sure that the back button is shown on the setup wizard no matter whether the IME is shown or not. Test: Manually verified as follows. 1. Build aosp_coral-userdebug then flash it. 2. adb root 3. adb shell setprop persist.sys.ime.can_render_gestural_nav_buttons true 4. adb reboot 5. adb install -r TestDPC-normalv8001.apk 6. adb shell am start -n com.afwsamples.testdpc/.SetupManagementLaunchActivity 7. Set up work-profile 8. make -j EditTextVariations 9. adb install -r \ $ANDROID_TARGET_OUT_TESTCASES/EditTextVariations/arm64/EditTextVariations.apk 10. adb shell am start --user 0 -n \ com.android.inputmethod.tools.edittextvariations/.EditTextVariations 11. adb shell dumpsys input_method | grep mNavigation -> "mNavigationBarController={mImeDrawsImeNavBar=false, ..." 12. Enable gesture navigation 13. adb shell dumpsys input_method | grep mNavigation -> "mNavigationBarController={mImeDrawsImeNavBar=true, ..." 14. adb shell am start --user 10 -n \ com.android.inputmethod.tools.edittextvariations/.EditTextVariations 15. adb shell dumpsys input_method | grep mNavigation -> "mNavigationBarController={mImeDrawsImeNavBar=true, ..." Change-Id: Iec55ce12e8198e243cdd716ab7c52d0f3939c279
Loading
Please register or sign in to comment