Skip to content
Commit 6495e3c9 authored by Yohei Yukawa's avatar Yohei Yukawa
Browse files

Clarify how IMMS#executeOrSendMessage() works

This CL attempts to clarify how

  InputMethodManagerService#executeOrSendMessage()

has been actually working, that is, probably to emulate oneway Binder
IPC semantics in case the target IInterface object is an in-process
Binder object, which is quite important to avoid dead-locks.

However, using it for IInputMethod objects is overkill because we have
never officially supported IMEs running in the system_server process.
There is no reason to define MSG_* for those cases.

As the initial step towards cleaning up those unnecessarily defined
switch cases, this CL introduces a new overload method

  InputMethodManagerService#executeOrSendMessage(IInputMethod, Message)

to make it clear that it always immediately invokes

  InputMethodManagerService#handleMessage()

if the target is IInputMethod.

The actual removal of

  InputMethodManagerService#executeOrSendMessage(IInputMethod, Message)

will be done through subsequent CLs.

To summarize, there should be no observable behavior change unless
someone is surprisingly running InputMethodService in the
system_server process.

Bug: 215609403
Test: presubmit
Change-Id: I0c4aab9a0974857e531be4fb1fc75980b36f4443
parent 20ba147a
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment