diff --git a/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java b/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java index c2aade3b9d7a8..651ce7d431fe1 100644 --- a/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java +++ b/services/core/java/com/android/server/inputmethod/InputMethodManagerService.java @@ -2037,6 +2037,12 @@ public class InputMethodManagerService extends IInputMethodManager.Stub if (mCurSeq <= 0) mCurSeq = 1; mCurClient = cs; mCurInputContext = inputContext; + if (cs.selfReportedDisplayId != displayIdToShowIme) { + // CursorAnchorInfo API does not work as-is for cross-display scenario. Pretend that + // InputConnection#requestCursorUpdates() is not implemented in the application so that + // IMEs will always receive false from this API. + missingMethods |= MissingMethodFlags.REQUEST_CURSOR_UPDATES; + } mCurInputContextMissingMethods = missingMethods; mCurAttribute = attribute;