[Rlog59b] Log CodeInput and KeyCode properly
- Fix function calls to happen at more resilient times - In the case of phantom spaces, ensure that the logStatement goes to the correct logUnit Change-Id: Ida8f6eba1e4f33d9f9b4735316e3c6316ed316c0main
parent
75e69753b7
commit
99931201d0
|
@ -1301,13 +1301,13 @@ public final class LatinIME extends InputMethodService implements KeyboardAction
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sendKeyCodePoint(final int code) {
|
private void sendKeyCodePoint(final int code) {
|
||||||
|
if (ProductionFlag.IS_EXPERIMENTAL) {
|
||||||
|
ResearchLogger.latinIME_sendKeyCodePoint(code);
|
||||||
|
}
|
||||||
// TODO: Remove this special handling of digit letters.
|
// TODO: Remove this special handling of digit letters.
|
||||||
// For backward compatibility. See {@link InputMethodService#sendKeyChar(char)}.
|
// For backward compatibility. See {@link InputMethodService#sendKeyChar(char)}.
|
||||||
if (code >= '0' && code <= '9') {
|
if (code >= '0' && code <= '9') {
|
||||||
sendDownUpKeyEventForBackwardCompatibility(code - '0' + KeyEvent.KEYCODE_0);
|
sendDownUpKeyEventForBackwardCompatibility(code - '0' + KeyEvent.KEYCODE_0);
|
||||||
if (ProductionFlag.IS_EXPERIMENTAL) {
|
|
||||||
ResearchLogger.latinIME_sendKeyCodePoint(code);
|
|
||||||
}
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1327,6 +1327,9 @@ public final class LatinIME extends InputMethodService implements KeyboardAction
|
||||||
// Implementation of {@link KeyboardActionListener}.
|
// Implementation of {@link KeyboardActionListener}.
|
||||||
@Override
|
@Override
|
||||||
public void onCodeInput(final int primaryCode, final int x, final int y) {
|
public void onCodeInput(final int primaryCode, final int x, final int y) {
|
||||||
|
if (ProductionFlag.IS_EXPERIMENTAL) {
|
||||||
|
ResearchLogger.latinIME_onCodeInput(primaryCode, x, y);
|
||||||
|
}
|
||||||
final long when = SystemClock.uptimeMillis();
|
final long when = SystemClock.uptimeMillis();
|
||||||
if (primaryCode != Constants.CODE_DELETE || when > mLastKeyTime + QUICK_PRESS) {
|
if (primaryCode != Constants.CODE_DELETE || when > mLastKeyTime + QUICK_PRESS) {
|
||||||
mDeleteCount = 0;
|
mDeleteCount = 0;
|
||||||
|
@ -1420,9 +1423,6 @@ public final class LatinIME extends InputMethodService implements KeyboardAction
|
||||||
mEnteredText = null;
|
mEnteredText = null;
|
||||||
}
|
}
|
||||||
mConnection.endBatchEdit();
|
mConnection.endBatchEdit();
|
||||||
if (ProductionFlag.IS_EXPERIMENTAL) {
|
|
||||||
ResearchLogger.latinIME_onCodeInput(primaryCode, x, y);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Called from PointerTracker through the KeyboardActionListener interface
|
// Called from PointerTracker through the KeyboardActionListener interface
|
||||||
|
@ -2324,6 +2324,9 @@ public final class LatinIME extends InputMethodService implements KeyboardAction
|
||||||
public void promotePhantomSpace() {
|
public void promotePhantomSpace() {
|
||||||
if (mSettings.getCurrent().shouldInsertSpacesAutomatically()) {
|
if (mSettings.getCurrent().shouldInsertSpacesAutomatically()) {
|
||||||
sendKeyCodePoint(Constants.CODE_SPACE);
|
sendKeyCodePoint(Constants.CODE_SPACE);
|
||||||
|
if (ProductionFlag.IS_EXPERIMENTAL) {
|
||||||
|
ResearchLogger.latinIME_promotePhantomSpace();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1175,9 +1175,8 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
|
||||||
/**
|
/**
|
||||||
* Log a call to LatinIME.sendKeyCodePoint().
|
* Log a call to LatinIME.sendKeyCodePoint().
|
||||||
*
|
*
|
||||||
* SystemResponse: The IME is simulating a hardware keypress. This happens for numbers; other
|
* SystemResponse: The IME is inserting text into the TextView for numbers, fixed strings, or
|
||||||
* input typically goes through RichInputConnection.setComposingText() and
|
* some other unusual mechanism.
|
||||||
* RichInputConnection.commitText().
|
|
||||||
*/
|
*/
|
||||||
private static final LogStatement LOGSTATEMENT_LATINIME_SENDKEYCODEPOINT =
|
private static final LogStatement LOGSTATEMENT_LATINIME_SENDKEYCODEPOINT =
|
||||||
new LogStatement("LatinIMESendKeyCodePoint", true, false, "code");
|
new LogStatement("LatinIMESendKeyCodePoint", true, false, "code");
|
||||||
|
@ -1190,6 +1189,24 @@ public class ResearchLogger implements SharedPreferences.OnSharedPreferenceChang
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Log a call to LatinIME.promotePhantomSpace().
|
||||||
|
*
|
||||||
|
* SystemResponse: The IME is inserting a real space in place of a phantom space.
|
||||||
|
*/
|
||||||
|
private static final LogStatement LOGSTATEMENT_LATINIME_PROMOTEPHANTOMSPACE =
|
||||||
|
new LogStatement("LatinIMEPromotPhantomSpace", false, false);
|
||||||
|
public static void latinIME_promotePhantomSpace() {
|
||||||
|
final ResearchLogger researchLogger = getInstance();
|
||||||
|
final LogUnit logUnit;
|
||||||
|
if (researchLogger.mMainLogBuffer == null) {
|
||||||
|
logUnit = researchLogger.mCurrentLogUnit;
|
||||||
|
} else {
|
||||||
|
logUnit = researchLogger.mMainLogBuffer.peekLastLogUnit();
|
||||||
|
}
|
||||||
|
researchLogger.enqueueEvent(logUnit, LOGSTATEMENT_LATINIME_PROMOTEPHANTOMSPACE);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Log a call to LatinIME.swapSwapperAndSpace().
|
* Log a call to LatinIME.swapSwapperAndSpace().
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in New Issue