am 5e51f2be: am 3f652e24: Merge "Clear composing text when the auto-corrected word is reverted" into honeycomb
* commit '5e51f2be32cf9f57355ac77e9952d6d03ef92175': Clear composing text when the auto-corrected word is revertedmain
commit
9b76ac088f
|
@ -1805,7 +1805,6 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||||
final int length = mComposing.length();
|
final int length = mComposing.length();
|
||||||
if (!mHasValidSuggestions && length > 0) {
|
if (!mHasValidSuggestions && length > 0) {
|
||||||
final InputConnection ic = getCurrentInputConnection();
|
final InputConnection ic = getCurrentInputConnection();
|
||||||
mHasValidSuggestions = true;
|
|
||||||
mJustReverted = true;
|
mJustReverted = true;
|
||||||
final CharSequence punctuation = ic.getTextBeforeCursor(1, 0);
|
final CharSequence punctuation = ic.getTextBeforeCursor(1, 0);
|
||||||
if (deleteChar) ic.deleteSurroundingText(1, 0);
|
if (deleteChar) ic.deleteSurroundingText(1, 0);
|
||||||
|
@ -1815,14 +1814,19 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||||
toDelete--;
|
toDelete--;
|
||||||
}
|
}
|
||||||
ic.deleteSurroundingText(toDelete, 0);
|
ic.deleteSurroundingText(toDelete, 0);
|
||||||
if (deleteChar) {
|
// Re-insert punctuation only when the deleted character was word separator and the
|
||||||
|
// composing text wasn't equal to the auto-corrected text.
|
||||||
|
if (deleteChar
|
||||||
|
&& !TextUtils.isEmpty(punctuation) && isWordSeparator(punctuation.charAt(0))
|
||||||
|
&& !TextUtils.equals(mComposing, toTheLeft)) {
|
||||||
ic.commitText(mComposing, 1);
|
ic.commitText(mComposing, 1);
|
||||||
TextEntryState.acceptedTyped(mComposing);
|
TextEntryState.acceptedTyped(mComposing);
|
||||||
if (!TextUtils.isEmpty(punctuation) && isWordSeparator(punctuation.charAt(0))) {
|
|
||||||
ic.commitText(punctuation, 1);
|
ic.commitText(punctuation, 1);
|
||||||
TextEntryState.typedCharacter(punctuation.charAt(0), true);
|
TextEntryState.typedCharacter(punctuation.charAt(0), true);
|
||||||
}
|
// Clear composing text
|
||||||
|
mComposing.setLength(0);
|
||||||
} else {
|
} else {
|
||||||
|
mHasValidSuggestions = true;
|
||||||
ic.setComposingText(mComposing, 1);
|
ic.setComposingText(mComposing, 1);
|
||||||
TextEntryState.backspace();
|
TextEntryState.backspace();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue