From cbed462d192d0c5af9614f5f997b2768f3d0eb56 Mon Sep 17 00:00:00 2001 From: Jean Chalard Date: Thu, 20 Mar 2014 17:55:30 +0900 Subject: [CB12] Reset the combining state when resetting the composer Bug: 13406701 Change-Id: I490574b7ca4b953f67dd2c0ef97401297fade0a4 --- java/src/com/android/inputmethod/latin/WordComposer.java | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'java/src/com/android/inputmethod/latin/WordComposer.java') diff --git a/java/src/com/android/inputmethod/latin/WordComposer.java b/java/src/com/android/inputmethod/latin/WordComposer.java index d55a773b4..78990e011 100644 --- a/java/src/com/android/inputmethod/latin/WordComposer.java +++ b/java/src/com/android/inputmethod/latin/WordComposer.java @@ -127,6 +127,7 @@ public final class WordComposer { * Clear out the keys registered so far. */ public void reset() { + mCombinerChain.reset(); mTypedWord.setLength(0); mEvents.clear(); mAutoCorrection = null; @@ -246,6 +247,8 @@ public final class WordComposer { * @return true if the cursor is still inside the composing word, false otherwise. */ public boolean moveCursorByAndReturnIfInsideComposingWord(final int expectedMoveAmount) { + // TODO: should uncommit the composing feedback + mCombinerChain.reset(); int actualMoveAmountWithinWord = 0; int cursorPos = mCursorPositionWithinWord; final int[] codePoints; @@ -485,6 +488,7 @@ public final class WordComposer { mIsBatchMode = false; mPreviousWordForSuggestion = committedWord.toString(); mTypedWord.setLength(0); + mCombinerChain.reset(); mEvents.clear(); mCodePointSize = 0; mTrailingSingleQuotesCount = 0; @@ -512,6 +516,7 @@ public final class WordComposer { Collections.copy(mEvents, lastComposedWord.mEvents); mInputPointers.set(lastComposedWord.mInputPointers); mTypedWord.setLength(0); + mCombinerChain.reset(); mTypedWord.append(lastComposedWord.mTypedWord); refreshSize(); mCapitalizedMode = lastComposedWord.mCapitalizedMode; -- cgit v1.2.3-83-g751a