preserve webkit-side text selection

When webkit modifies a text field programmatically, it may change
the selection. This competes with the UI thread attempting to
set the selection in response to the IME next button and changes
made by the trackball.

One recent fix (https://android-git.corp.google.com/g/#change,26904)
sets the selection from the UI side after the IME generated click.
Unfortunately, this can be generated under other circumstances,
so this change qualifies this with mOkayForFocusNotToMatch, which
is only set after the IME next button is pressed.

The other change qualfies onTextChanged calls so that if it was
triggered by setTextAndKeepSelection, the webkit-side selection
is unchanged.

fixes http://b/issue?id=2096746
2 files changed