Interesting nits about this:
- getMetaState(long) and getMetaState(long, int) do not
seem to be used anywhere in the framework. Maybe we
want to skip adding getMetaState(long, KeyEvent) and
getMetaState(long, int, KeyEvent).
- getMetaState(CharSequence, int) is used extensively
throughout the code. In some places, a KeyEvent is
available and should be considered - this change does
implement this. In many other cases, there is no
relevant KeyEvent for this action (for example,
Editor#extractTextInternal). In these cases, the
behavior is affected by the current latch state, so
it's fine to leave them as is.
Bug: 8303489
Change-Id: I4a948c497c49e48f83ba1048520e7fe5bfe84727