From cbeadf8f71056b9bb3af3b0b5f8ee7986c44c4b2 Mon Sep 17 00:00:00 2001 From: Yohei Yukawa Date: Thu, 13 Oct 2022 23:05:41 -0700 Subject: [PATCH 1/2] Partly inline ImeFocusController#updateImeFocusable() This is mechanical refactoring. There must be no observable behavior change. Bug: 234882948 Test: presubmit Change-Id: I0c63504fc7fe665f7b7816bdcc7a6cb357482380 --- core/java/android/view/ImeFocusController.java | 12 ++++-------- core/java/android/view/ViewRootImpl.java | 2 +- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/core/java/android/view/ImeFocusController.java b/core/java/android/view/ImeFocusController.java index 4f2b62155c488..455f4a76834e1 100644 --- a/core/java/android/view/ImeFocusController.java +++ b/core/java/android/view/ImeFocusController.java @@ -65,7 +65,8 @@ public final class ImeFocusController { @UiThread void onTraversal(boolean hasWindowFocus, WindowManager.LayoutParams windowAttribute) { - final boolean hasImeFocus = updateImeFocusable(windowAttribute, false /* force */); + final boolean hasImeFocus = WindowManager.LayoutParams.mayUseInputMethod( + windowAttribute.flags); if (!hasWindowFocus || isInLocalFocusMode(windowAttribute)) { return; } @@ -90,13 +91,8 @@ public final class ImeFocusController { } @UiThread - boolean updateImeFocusable(WindowManager.LayoutParams windowAttribute, boolean force) { - final boolean hasImeFocus = WindowManager.LayoutParams.mayUseInputMethod( - windowAttribute.flags); - if (force) { - mHasImeFocus = hasImeFocus; - } - return hasImeFocus; + void updateImeFocusable(WindowManager.LayoutParams windowAttribute) { + mHasImeFocus = WindowManager.LayoutParams.mayUseInputMethod(windowAttribute.flags); } @UiThread diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index b2b5f1356273f..b690b3c5098cb 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -3798,7 +3798,7 @@ public final class ViewRootImpl implements ViewParent, } mAttachInfo.mHasWindowFocus = hasWindowFocus; - mImeFocusController.updateImeFocusable(mWindowAttributes, true /* force */); + mImeFocusController.updateImeFocusable(mWindowAttributes); mImeFocusController.onPreWindowFocus(hasWindowFocus, mWindowAttributes); if (mView != null) { From f324eaba3cf8b66c940ec4ccfcefbda5e8581968 Mon Sep 17 00:00:00 2001 From: Yohei Yukawa Date: Thu, 13 Oct 2022 23:06:47 -0700 Subject: [PATCH 2/2] Merge updateImeFocusable() into onPostWindowFocus() This is mechanical refactoring. There must be no behavior change. Bug: 234882948 Test: presubmit Change-Id: I49665b3832de75238243227acc76be58dceb50fc --- core/java/android/view/ImeFocusController.java | 6 +----- core/java/android/view/ViewRootImpl.java | 1 - 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/core/java/android/view/ImeFocusController.java b/core/java/android/view/ImeFocusController.java index 455f4a76834e1..fa647d7e9c004 100644 --- a/core/java/android/view/ImeFocusController.java +++ b/core/java/android/view/ImeFocusController.java @@ -84,17 +84,13 @@ public final class ImeFocusController { @UiThread void onPreWindowFocus(boolean hasWindowFocus, WindowManager.LayoutParams windowAttribute) { + mHasImeFocus = WindowManager.LayoutParams.mayUseInputMethod(windowAttribute.flags); if (!hasWindowFocus || !mHasImeFocus || isInLocalFocusMode(windowAttribute)) { return; } getImmDelegate().onPreWindowGainedFocus(mViewRootImpl); } - @UiThread - void updateImeFocusable(WindowManager.LayoutParams windowAttribute) { - mHasImeFocus = WindowManager.LayoutParams.mayUseInputMethod(windowAttribute.flags); - } - @UiThread void onPostWindowFocus(View focusedView, boolean hasWindowFocus, WindowManager.LayoutParams windowAttribute) { diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index b690b3c5098cb..fd56463f512bb 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -3798,7 +3798,6 @@ public final class ViewRootImpl implements ViewParent, } mAttachInfo.mHasWindowFocus = hasWindowFocus; - mImeFocusController.updateImeFocusable(mWindowAttributes); mImeFocusController.onPreWindowFocus(hasWindowFocus, mWindowAttributes); if (mView != null) {