Fix a bug with some text fields
Not sure when this happens exactly, but it is possible that InputConnection#getTextBeforeCursor returns null. This happens for example upon rotating the screen with the composing field empty in Gmail. In this case, StringBuilder#append will convert the null pointer into the string "null", which is sure better than a crash, but can have a number of bad side-effects, like auto-caps not working. Bug: 7533034 Change-Id: Ia1cfab432c13a12ff1c2f013c59bac05a587f553
This commit is contained in:
parent
fac619a34c
commit
00c0010ccf
1 changed files with 2 additions and 1 deletions
|
@ -145,7 +145,8 @@ public final class RichInputConnection {
|
|||
mCurrentCursorPosition = newCursorPosition;
|
||||
mComposingText.setLength(0);
|
||||
mCommittedTextBeforeComposingText.setLength(0);
|
||||
mCommittedTextBeforeComposingText.append(getTextBeforeCursor(DEFAULT_TEXT_CACHE_SIZE, 0));
|
||||
final CharSequence textBeforeCursor = getTextBeforeCursor(DEFAULT_TEXT_CACHE_SIZE, 0);
|
||||
if (null != textBeforeCursor) mCommittedTextBeforeComposingText.append(textBeforeCursor);
|
||||
mCharAfterTheCursor = getTextAfterCursor(1, 0);
|
||||
if (null != mIC) {
|
||||
mIC.finishComposingText();
|
||||
|
|
Loading…
Reference in a new issue