aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/TextEntryState.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/com/android/inputmethod/latin/TextEntryState.java')
-rw-r--r--java/src/com/android/inputmethod/latin/TextEntryState.java35
1 files changed, 19 insertions, 16 deletions
diff --git a/java/src/com/android/inputmethod/latin/TextEntryState.java b/java/src/com/android/inputmethod/latin/TextEntryState.java
index 8fd9b7129..bc7bf3f71 100644
--- a/java/src/com/android/inputmethod/latin/TextEntryState.java
+++ b/java/src/com/android/inputmethod/latin/TextEntryState.java
@@ -43,22 +43,9 @@ public class TextEntryState {
private static int sSessionCount = 0;
private static int sTypedChars;
-
+
private static int sActualChars;
-
- private static final String[] STATES = {
- "Unknown",
- "Start",
- "In word",
- "Accepted default",
- "Picked suggestion",
- "Punc. after word",
- "Punc. after accepted",
- "Space after accepted",
- "Space after picked",
- "Undo commit"
- };
-
+
public static final int STATE_UNKNOWN = 0;
public static final int STATE_START = 1;
public static final int STATE_IN_WORD = 2;
@@ -132,8 +119,23 @@ public class TextEntryState {
sTypedChars += typedWord.length();
sActualChars += actualWord.length();
sState = STATE_ACCEPTED_DEFAULT;
+ LatinImeLogger.logOnAutoSuggestion(typedWord.toString(), actualWord.toString());
}
-
+
+ // STATE_ACCEPTED_DEFAULT will be changed to other sub-states
+ // (see "case STATE_ACCEPTED_DEFAULT" in typedCharacter() below),
+ // and should be restored back to STATE_ACCEPTED_DEFAULT after processing for each sub-state.
+ public static void backToAcceptedDefault(CharSequence typedWord) {
+ if (typedWord == null) return;
+ switch (sState) {
+ case STATE_SPACE_AFTER_ACCEPTED:
+ case STATE_PUNCTUATION_AFTER_ACCEPTED:
+ case STATE_IN_WORD:
+ sState = STATE_ACCEPTED_DEFAULT;
+ break;
+ }
+ }
+
public static void acceptedTyped(CharSequence typedWord) {
sWordNotInDictionaryCount++;
sState = STATE_PICKED_SUGGESTION;
@@ -211,6 +213,7 @@ public class TextEntryState {
if (sState == STATE_ACCEPTED_DEFAULT) {
sState = STATE_UNDO_COMMIT;
sAutoSuggestUndoneCount++;
+ LatinImeLogger.logOnAutoSuggestionCanceled();
} else if (sState == STATE_UNDO_COMMIT) {
sState = STATE_IN_WORD;
}