Loading core/java/android/inputmethodservice/InputMethodService.java +9 −5 Original line number Diff line number Diff line Loading @@ -1208,15 +1208,19 @@ public class InputMethodService extends AbstractInputMethodService { mWindow.getWindow().getAttributes().setFitInsetsIgnoringVisibility(true); // IME layout should always be inset by navigation bar, no matter its current visibility, // unless automotive requests it, since automotive may hide the navigation bar. // unless automotive requests it. Automotive devices may request the navigation bar to be // hidden when the IME shows up (controlled via config_automotiveHideNavBarForKeyboard) // in order to maximize the visible screen real estate. When this happens, the IME window // should animate from the bottom of the screen to reduce the jank that happens from the // lack of synchronization between the bottom system window and the IME window. if (mIsAutomotive && mAutomotiveHideNavBarForKeyboard) { mWindow.getWindow().setDecorFitsSystemWindows(false); } mWindow.getWindow().getDecorView().setOnApplyWindowInsetsListener( (v, insets) -> v.onApplyWindowInsets( new WindowInsets.Builder(insets).setInsets( navigationBars(), mIsAutomotive && mAutomotiveHideNavBarForKeyboard ? android.graphics.Insets.NONE : insets.getInsetsIgnoringVisibility(navigationBars()) ) insets.getInsetsIgnoringVisibility(navigationBars())) .build())); // For ColorView in DecorView to work, FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS needs to be set Loading Loading
core/java/android/inputmethodservice/InputMethodService.java +9 −5 Original line number Diff line number Diff line Loading @@ -1208,15 +1208,19 @@ public class InputMethodService extends AbstractInputMethodService { mWindow.getWindow().getAttributes().setFitInsetsIgnoringVisibility(true); // IME layout should always be inset by navigation bar, no matter its current visibility, // unless automotive requests it, since automotive may hide the navigation bar. // unless automotive requests it. Automotive devices may request the navigation bar to be // hidden when the IME shows up (controlled via config_automotiveHideNavBarForKeyboard) // in order to maximize the visible screen real estate. When this happens, the IME window // should animate from the bottom of the screen to reduce the jank that happens from the // lack of synchronization between the bottom system window and the IME window. if (mIsAutomotive && mAutomotiveHideNavBarForKeyboard) { mWindow.getWindow().setDecorFitsSystemWindows(false); } mWindow.getWindow().getDecorView().setOnApplyWindowInsetsListener( (v, insets) -> v.onApplyWindowInsets( new WindowInsets.Builder(insets).setInsets( navigationBars(), mIsAutomotive && mAutomotiveHideNavBarForKeyboard ? android.graphics.Insets.NONE : insets.getInsetsIgnoringVisibility(navigationBars()) ) insets.getInsetsIgnoringVisibility(navigationBars())) .build())); // For ColorView in DecorView to work, FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS needs to be set Loading