Forward the capitalized mode to the positional info (D1)
Bug: 7972124 Change-Id: I3c74f3b075e698b9e9dd1d2c7b6f173073539063main
parent
5e45fbf0be
commit
b6b7f5e39e
|
@ -45,19 +45,21 @@ public final class LastComposedWord {
|
|||
public final String mCommittedWord;
|
||||
public final String mSeparatorString;
|
||||
public final String mPrevWord;
|
||||
public final int mCapitalizedMode;
|
||||
public final InputPointers mInputPointers =
|
||||
new InputPointers(Constants.Dictionary.MAX_WORD_LENGTH);
|
||||
|
||||
private boolean mActive;
|
||||
|
||||
public static final LastComposedWord NOT_A_COMPOSED_WORD =
|
||||
new LastComposedWord(null, null, "", "", NOT_A_SEPARATOR, null);
|
||||
new LastComposedWord(null, null, "", "", NOT_A_SEPARATOR, null,
|
||||
WordComposer.CAPS_MODE_OFF);
|
||||
|
||||
// Warning: this is using the passed objects as is and fully expects them to be
|
||||
// immutable. Do not fiddle with their contents after you passed them to this constructor.
|
||||
public LastComposedWord(final int[] primaryKeyCodes, final InputPointers inputPointers,
|
||||
final String typedWord, final String committedWord,
|
||||
final String separatorString, final String prevWord) {
|
||||
final String typedWord, final String committedWord, final String separatorString,
|
||||
final String prevWord, final int capitalizedMode) {
|
||||
mPrimaryKeyCodes = primaryKeyCodes;
|
||||
if (inputPointers != null) {
|
||||
mInputPointers.copy(inputPointers);
|
||||
|
@ -67,6 +69,7 @@ public final class LastComposedWord {
|
|||
mSeparatorString = separatorString;
|
||||
mActive = true;
|
||||
mPrevWord = prevWord;
|
||||
mCapitalizedMode = capitalizedMode;
|
||||
}
|
||||
|
||||
public void deactivate() {
|
||||
|
|
|
@ -1223,7 +1223,8 @@ public final class LatinIME extends InputMethodService implements KeyboardAction
|
|||
}
|
||||
mPositionalInfoForUserDictPendingAddition =
|
||||
new PositionalInfoForUserDictPendingAddition(
|
||||
word, mLastSelectionEnd, getCurrentInputEditorInfo());
|
||||
word, mLastSelectionEnd, getCurrentInputEditorInfo(),
|
||||
mLastComposedWord.mCapitalizedMode);
|
||||
mUserDictionary.addWordToUserDictionary(word, 128);
|
||||
}
|
||||
|
||||
|
|
|
@ -33,13 +33,15 @@ public final class PositionalInfoForUserDictPendingAddition {
|
|||
final private String mOriginalWord;
|
||||
final private int mCursorPos; // Position of the cursor after the word
|
||||
final private EditorInfo mEditorInfo; // On what binding this has been added
|
||||
final private int mCapitalizedMode;
|
||||
private String mActualWordBeingAdded;
|
||||
|
||||
public PositionalInfoForUserDictPendingAddition(final String word, final int cursorPos,
|
||||
final EditorInfo editorInfo) {
|
||||
final EditorInfo editorInfo, final int capitalizedMode) {
|
||||
mOriginalWord = word;
|
||||
mCursorPos = cursorPos;
|
||||
mEditorInfo = editorInfo;
|
||||
mCapitalizedMode = capitalizedMode;
|
||||
}
|
||||
|
||||
public void setActualWordBeingAdded(final String actualWordBeingAdded) {
|
||||
|
|
|
@ -350,7 +350,7 @@ public final class WordComposer {
|
|||
mPrimaryKeyCodes = new int[MAX_WORD_LENGTH];
|
||||
final LastComposedWord lastComposedWord = new LastComposedWord(primaryKeyCodes,
|
||||
mInputPointers, mTypedWord.toString(), committedWord, separatorString,
|
||||
prevWord);
|
||||
prevWord, mCapitalizedMode);
|
||||
mInputPointers.reset();
|
||||
if (type != LastComposedWord.COMMIT_TYPE_DECIDED_WORD
|
||||
&& type != LastComposedWord.COMMIT_TYPE_MANUAL_PICK) {
|
||||
|
@ -374,6 +374,7 @@ public final class WordComposer {
|
|||
mTypedWord.setLength(0);
|
||||
mTypedWord.append(lastComposedWord.mTypedWord);
|
||||
refreshSize();
|
||||
mCapitalizedMode = lastComposedWord.mCapitalizedMode;
|
||||
mAutoCorrection = null; // This will be filled by the next call to updateSuggestion.
|
||||
mIsResumed = true;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue