Skip to content
Snippets Groups Projects
Commit af8b626e authored by Ken Wakasa's avatar Ken Wakasa Committed by Android (Google) Code Review
Browse files

Merge "Fix an issue with lingering composing span underline after orientation changes"

parents 48e432ce d024ea60
No related branches found
No related tags found
No related merge requests found
...@@ -645,13 +645,18 @@ public class LatinIME extends InputMethodService ...@@ -645,13 +645,18 @@ public class LatinIME extends InputMethodService
} }
private void checkReCorrectionOnStart() { private void checkReCorrectionOnStart() {
if (mReCorrectionEnabled && isSuggestionShown() && isPredictionOn()) { if (!mReCorrectionEnabled) return;
final InputConnection ic = getCurrentInputConnection();
if (ic == null) return;
// There could be a pending composing span. Clean it up first.
ic.finishComposingText();
if (isSuggestionShown() && isPredictionOn()) {
// First get the cursor position. This is required by setOldSuggestions(), so that // First get the cursor position. This is required by setOldSuggestions(), so that
// it can pass the correct range to setComposingRegion(). At this point, we don't // it can pass the correct range to setComposingRegion(). At this point, we don't
// have valid values for mLastSelectionStart/Stop because onUpdateSelection() has // have valid values for mLastSelectionStart/Stop because onUpdateSelection() has
// not been called yet. // not been called yet.
InputConnection ic = getCurrentInputConnection();
if (ic == null) return;
ExtractedTextRequest etr = new ExtractedTextRequest(); ExtractedTextRequest etr = new ExtractedTextRequest();
etr.token = 0; // anything is fine here etr.token = 0; // anything is fine here
ExtractedText et = ic.getExtractedText(etr, 0); ExtractedText et = ic.getExtractedText(etr, 0);
...@@ -677,8 +682,7 @@ public class LatinIME extends InputMethodService ...@@ -677,8 +682,7 @@ public class LatinIME extends InputMethodService
mVoiceConnector.flushVoiceInputLogs(mConfigurationChanging); mVoiceConnector.flushVoiceInputLogs(mConfigurationChanging);
KeyboardView inputView = mKeyboardSwitcher.getInputView(); KeyboardView inputView = mKeyboardSwitcher.getInputView();
if (inputView != null) if (inputView != null) inputView.closing();
inputView.closing();
if (mAutoDictionary != null) mAutoDictionary.flushPendingWrites(); if (mAutoDictionary != null) mAutoDictionary.flushPendingWrites();
if (mUserBigramDictionary != null) mUserBigramDictionary.flushPendingWrites(); if (mUserBigramDictionary != null) mUserBigramDictionary.flushPendingWrites();
} }
...@@ -687,8 +691,7 @@ public class LatinIME extends InputMethodService ...@@ -687,8 +691,7 @@ public class LatinIME extends InputMethodService
public void onFinishInputView(boolean finishingInput) { public void onFinishInputView(boolean finishingInput) {
super.onFinishInputView(finishingInput); super.onFinishInputView(finishingInput);
KeyboardView inputView = mKeyboardSwitcher.getInputView(); KeyboardView inputView = mKeyboardSwitcher.getInputView();
if (inputView != null) if (inputView != null) inputView.setForeground(false);
inputView.setForeground(false);
// Remove pending messages related to update suggestions // Remove pending messages related to update suggestions
mHandler.cancelUpdateSuggestions(); mHandler.cancelUpdateSuggestions();
mHandler.cancelUpdateOldSuggestions(); mHandler.cancelUpdateOldSuggestions();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment