diff options
| author | TreeHugger Robot <treehugger-gerrit@google.com> | 2020-03-14 00:26:57 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2020-03-14 00:26:57 +0000 |
| commit | 62748d0a66972c107a0bdb6cfcb200a696981fb0 (patch) | |
| tree | b66137e2e2b0c004ea743bf24e5a8ef094ce3217 /core/java/android | |
| parent | eeff2cf7531f06816c168131f641f98b5fcbea81 (diff) | |
| parent | ec78f00fe91401900f863a996eff584a65122266 (diff) | |
Merge "Set mNextServedView as null only when current served view lost focus" into rvc-dev
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/view/ImeFocusController.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/core/java/android/view/ImeFocusController.java b/core/java/android/view/ImeFocusController.java index 74fac2b40472..6784cf7407fa 100644 --- a/core/java/android/view/ImeFocusController.java +++ b/core/java/android/view/ImeFocusController.java @@ -165,10 +165,16 @@ public final class ImeFocusController { if (!getImmDelegate().isCurrentRootView(view.getViewRootImpl())) { return; } - if (mServedView == view || !view.hasImeFocus() || !view.hasWindowFocus()) { + if (!view.hasImeFocus() || !view.hasWindowFocus()) { return; } - mNextServedView = hasFocus ? view : null; + if (DEBUG) Log.d(TAG, "onViewFocusChanged, view=" + view + ", mServedView=" + mServedView); + + if (hasFocus) { + mNextServedView = view; + } else if (view == mServedView) { + mNextServedView = null; + } mViewRootImpl.dispatchCheckFocus(); } |
