Loading core/java/android/inputmethodservice/NavigationBarController.java +52 −48 Original line number Diff line number Diff line Loading @@ -246,8 +246,7 @@ final class NavigationBarController { @Override public void updateTouchableInsets(@NonNull InputMethodService.Insets originalInsets, @NonNull ViewTreeObserver.InternalInsetsInfo dest) { if (!mImeDrawsImeNavBar || mNavigationBarFrame == null || mService.isExtractViewShown()) { if (!mImeDrawsImeNavBar || mNavigationBarFrame == null) { return; } Loading @@ -255,6 +254,10 @@ final class NavigationBarController { if (systemInsets != null) { final Window window = mService.mWindow.getWindow(); final View decor = window.getDecorView(); // If the extract view is shown, everything is touchable, so no need to update // touchable insets, but we still update normal insets below. if (!mService.isExtractViewShown()) { Region touchableRegion = null; final View inputFrame = mService.mInputFrame; switch (originalInsets.touchableInsets) { Loading Loading @@ -302,6 +305,7 @@ final class NavigationBarController { dest.touchableRegion.set(touchableRegion); dest.setTouchableInsets( ViewTreeObserver.InternalInsetsInfo.TOUCHABLE_INSETS_REGION); } // TODO(b/215443343): See if we can use View#OnLayoutChangeListener(). // TODO(b/215443343): See if we can replace DecorView#mNavigationColorViewState.view Loading Loading
core/java/android/inputmethodservice/NavigationBarController.java +52 −48 Original line number Diff line number Diff line Loading @@ -246,8 +246,7 @@ final class NavigationBarController { @Override public void updateTouchableInsets(@NonNull InputMethodService.Insets originalInsets, @NonNull ViewTreeObserver.InternalInsetsInfo dest) { if (!mImeDrawsImeNavBar || mNavigationBarFrame == null || mService.isExtractViewShown()) { if (!mImeDrawsImeNavBar || mNavigationBarFrame == null) { return; } Loading @@ -255,6 +254,10 @@ final class NavigationBarController { if (systemInsets != null) { final Window window = mService.mWindow.getWindow(); final View decor = window.getDecorView(); // If the extract view is shown, everything is touchable, so no need to update // touchable insets, but we still update normal insets below. if (!mService.isExtractViewShown()) { Region touchableRegion = null; final View inputFrame = mService.mInputFrame; switch (originalInsets.touchableInsets) { Loading Loading @@ -302,6 +305,7 @@ final class NavigationBarController { dest.touchableRegion.set(touchableRegion); dest.setTouchableInsets( ViewTreeObserver.InternalInsetsInfo.TOUCHABLE_INSETS_REGION); } // TODO(b/215443343): See if we can use View#OnLayoutChangeListener(). // TODO(b/215443343): See if we can replace DecorView#mNavigationColorViewState.view Loading