diff options
author | 2014-06-13 16:50:05 +0900 | |
---|---|---|
committer | 2014-06-16 18:44:39 +0900 | |
commit | deccc23564304b11d58590041f25adffdf6e1b6a (patch) | |
tree | 890a3b707c1a48099601f9752cabcc6bec2db970 /java/src/com/android/inputmethod/latin/WordComposer.java | |
parent | 83c7fc94f61fe24b50111a1be0f52a913f9c755a (diff) | |
download | latinime-deccc23564304b11d58590041f25adffdf6e1b6a.tar.gz latinime-deccc23564304b11d58590041f25adffdf6e1b6a.tar.xz latinime-deccc23564304b11d58590041f25adffdf6e1b6a.zip |
[CM1] Let predictions be aware of capitalize mode.
Bug: 15554503
Change-Id: If5e8c0d94ed26d929400ccbb0d45ac23dd98d180
Diffstat (limited to 'java/src/com/android/inputmethod/latin/WordComposer.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/WordComposer.java | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/java/src/com/android/inputmethod/latin/WordComposer.java b/java/src/com/android/inputmethod/latin/WordComposer.java index 6ce1f85c5..21fe7e0eb 100644 --- a/java/src/com/android/inputmethod/latin/WordComposer.java +++ b/java/src/com/android/inputmethod/latin/WordComposer.java @@ -310,12 +310,18 @@ public final class WordComposer { } /** - * Whether or not the user typed a capital letter as the first letter in the word, and no - * other letter is capitalized + * Whether this composer is composing or about to compose a word in which only the first letter + * is a capital. + * + * If we do have a composing word, we just return whether the word has indeed only its first + * character capitalized. If we don't, then we return a value based on the capitalized mode, + * which tell us what is likely to happen for the next composing word. + * * @return capitalization preference */ - public boolean isOnlyFirstCharCapitalized() { - return mIsOnlyFirstCharCapitalized; + public boolean isOrWillBeOnlyFirstCharCapitalized() { + return isComposingWord() ? mIsOnlyFirstCharCapitalized + : (CAPS_MODE_OFF != mCapitalizedMode); } /** @@ -366,6 +372,20 @@ public final class WordComposer { } /** + * Before fetching suggestions, we don't necessarily know about the capitalized mode yet. + * + * If we don't have a composing word yet, we take a note of this mode so that we can then + * supply this information to the suggestion process. If we have a composing word, then + * the previous mode has priority over this. + * @param mode the mode just before fetching suggestions + */ + public void adviseCapitalizedModeBeforeFetchingSuggestions(final int mode) { + if (!isComposingWord()) { + mCapitalizedMode = mode; + } + } + + /** * Returns whether the word was automatically capitalized. * @return whether the word was automatically capitalized */ |