Merge "Keep ime information up-to-date even when divider invisible" into rvc-dev

This commit is contained in:
Evan Rosky
2020-06-19 16:08:37 +00:00
committed by Android (Google) Code Review

View File

@@ -126,16 +126,16 @@ class DividerImeController implements DisplayImeController.ImePositionProcessor
@Override @Override
public void onImeStartPositioning(int displayId, int hiddenTop, int shownTop, public void onImeStartPositioning(int displayId, int hiddenTop, int shownTop,
boolean imeShouldShow, SurfaceControl.Transaction t) { boolean imeShouldShow, SurfaceControl.Transaction t) {
mHiddenTop = hiddenTop;
mShownTop = shownTop;
mTargetShown = imeShouldShow;
if (!isDividerVisible()) { if (!isDividerVisible()) {
return; return;
} }
final boolean splitIsVisible = !getView().isHidden(); final boolean splitIsVisible = !getView().isHidden();
mSecondaryHasFocus = getSecondaryHasFocus(displayId); mSecondaryHasFocus = getSecondaryHasFocus(displayId);
final boolean targetAdjusted = splitIsVisible && imeShouldShow && mSecondaryHasFocus final boolean targetAdjusted = splitIsVisible && imeShouldShow && mSecondaryHasFocus
&& !getLayout().mDisplayLayout.isLandscape(); && !getLayout().mDisplayLayout.isLandscape() && !mSplits.mDivider.isMinimized();
mHiddenTop = hiddenTop;
mShownTop = shownTop;
mTargetShown = imeShouldShow;
if (mLastAdjustTop < 0) { if (mLastAdjustTop < 0) {
mLastAdjustTop = imeShouldShow ? hiddenTop : shownTop; mLastAdjustTop = imeShouldShow ? hiddenTop : shownTop;
} else if (mLastAdjustTop != (imeShouldShow ? mShownTop : mHiddenTop)) { } else if (mLastAdjustTop != (imeShouldShow ? mShownTop : mHiddenTop)) {