Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 226377e6 authored by Kurt Partridge's avatar Kurt Partridge
Browse files

Log LatinIME.commitCurrentAutoCorrection()

Change-Id: Ic46c91374ae0177cafad4579d28d6980af0d8d3a
parent c322c3c3
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -2045,6 +2045,11 @@ public final class LatinIME extends InputMethodService implements KeyboardAction
                        typedWord, autoCorrection.toString(), separatorString, mWordComposer);
            }
            mExpectingUpdateSelection = true;
            if (ProductionFlag.IS_EXPERIMENTAL) {
                ResearchLogger.latinIme_commitCurrentAutoCorrection(typedWord,
                        autoCorrection.toString(), separatorString);
            }

            commitChosenWord(autoCorrection, LastComposedWord.COMMIT_TYPE_DECIDED_WORD,
                    separatorString);
            if (!typedWord.equals(autoCorrection)) {
+21 −1
Original line number Diff line number Diff line
@@ -1224,6 +1224,26 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
                completionInfo);
    }

    /**
     * Log a call to LatinIME.commitCurrentAutoCorrection().
     *
     * SystemResponse: The IME has committed an auto-correction.  An auto-correction changes the raw
     * text input to another word that the user more likely desired to type.
     */
    private static final LogStatement LOGSTATEMENT_LATINIME_COMMITCURRENTAUTOCORRECTION =
            new LogStatement("LatinIMECommitCurrentAutoCorrection", true, false, "typedWord",
                    "autoCorrection", "separatorString");
    public static void latinIme_commitCurrentAutoCorrection(final String typedWord,
            final String autoCorrection, final String separatorString) {
        final String scrubbedTypedWord = scrubDigitsFromString(typedWord);
        final String scrubbedAutoCorrection = scrubDigitsFromString(autoCorrection);
        final ResearchLogger researchLogger = getInstance();
        researchLogger.enqueueEvent(LOGSTATEMENT_LATINIME_COMMITCURRENTAUTOCORRECTION,
                scrubbedTypedWord, scrubbedAutoCorrection, separatorString);
        researchLogger.onWordComplete(scrubbedAutoCorrection, Long.MAX_VALUE,
                false /* isPartial */);
    }

    private boolean isExpectingCommitText = false;
    public static void latinIME_commitPartialText(final CharSequence committedWord,
            final long lastTimestampOfWordData) {
@@ -1246,9 +1266,9 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
        final ResearchLogger researchLogger = getInstance();
        final String scrubbedWord = scrubDigitsFromString(committedWord.toString());
        if (!researchLogger.isExpectingCommitText) {
            researchLogger.onWordComplete(scrubbedWord, Long.MAX_VALUE, false /* isPartial */);
            researchLogger.enqueueEvent(LOGSTATEMENT_RICHINPUTCONNECTIONCOMMITTEXT,
                    newCursorPosition);
            researchLogger.onWordComplete(scrubbedWord, Long.MAX_VALUE, false /* isPartial */);
        }
        researchLogger.isExpectingCommitText = false;
    }