From 07981b4f3f3000aeebd3c7cc73c8f7987fb68e8e Mon Sep 17 00:00:00 2001 From: Tiger Huang Date: Mon, 22 Feb 2021 18:17:42 +0800 Subject: [PATCH] Refine the condition about force layout This CL applies SOFT_INPUT_MASK_ADJUST before comparing to SOFT_INPUT_ADJUST_RESIZE. Bug: 161781474 Test: atest ForceRelayoutTest ForceRelayoutSdk29Test Change-Id: I275faafd7520df06f512c638f7c5255cc460aa02 --- core/java/android/view/ViewRootImpl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index f1f6786aa43ea..144691d3eaa0e 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -1677,7 +1677,8 @@ public final class ViewRootImpl implements ViewParent, // See comment for View.sForceLayoutWhenInsetsChanged if (View.sForceLayoutWhenInsetsChanged && mView != null - && mWindowAttributes.softInputMode == SOFT_INPUT_ADJUST_RESIZE) { + && (mWindowAttributes.softInputMode & SOFT_INPUT_MASK_ADJUST) + == SOFT_INPUT_ADJUST_RESIZE) { forceLayout(mView); }