From 6bb701155931fbf3f96aaea1c8c7b0ba4b521b3f Mon Sep 17 00:00:00 2001 From: Dan Zivkovic Date: Tue, 7 Apr 2015 11:18:58 -0700 Subject: [PATCH] Read less data from the input connection. Currently, we read 256 (max word size) * 5 (max N-gram size + 1) characters from the input connection when building our context. This is overkill. We don't need more than 80 characters, regardless of which decoder we use. Bug 19987461. Change-Id: Ie3a321cf2482adbacd8006d9d86e6601097c15ed --- .../android/inputmethod/latin/RichInputConnection.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/java/src/com/android/inputmethod/latin/RichInputConnection.java b/java/src/com/android/inputmethod/latin/RichInputConnection.java index 08e8fe346..6409ed82f 100644 --- a/java/src/com/android/inputmethod/latin/RichInputConnection.java +++ b/java/src/com/android/inputmethod/latin/RichInputConnection.java @@ -62,10 +62,10 @@ public final class RichInputConnection implements PrivateCommandPerformer { private static final boolean DBG = false; private static final boolean DEBUG_PREVIOUS_TEXT = false; private static final boolean DEBUG_BATCH_NESTING = false; - // Provision for long words and separators between the words. - private static final int LOOKBACK_CHARACTER_NUM = DICTIONARY_MAX_WORD_LENGTH - * (DecoderSpecificConstants.MAX_PREV_WORD_COUNT_FOR_N_GRAM + 1) /* words */ - + DecoderSpecificConstants.MAX_PREV_WORD_COUNT_FOR_N_GRAM /* separators */; + // Provision for realistic N-grams like "Hello, how are you?" and "I'm running 5 late". + // Technically, this will not handle 5-grams composed of long words, but in practice, + // our language models don't include that much data. + private static final int LOOKBACK_CHARACTER_NUM = 80; private static final int INVALID_CURSOR_POSITION = -1; /**