Handle correctly the restarting argument
Bug: 6851364 Change-Id: Ie939a43b8527a76aec213b702d3d850717f22a81
This commit is contained in:
parent
e863fb712f
commit
aa906c36aa
1 changed files with 30 additions and 16 deletions
|
@ -659,21 +659,34 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||||
accessUtils.onStartInputViewInternal(editorInfo, restarting);
|
accessUtils.onStartInputViewInternal(editorInfo, restarting);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!restarting) {
|
||||||
mSubtypeSwitcher.updateParametersOnStartInputView();
|
mSubtypeSwitcher.updateParametersOnStartInputView();
|
||||||
|
}
|
||||||
|
|
||||||
// The EditorInfo might have a flag that affects fullscreen mode.
|
// The EditorInfo might have a flag that affects fullscreen mode.
|
||||||
// Note: This call should be done by InputMethodService?
|
// Note: This call should be done by InputMethodService?
|
||||||
updateFullscreenMode();
|
updateFullscreenMode();
|
||||||
mLastSelectionStart = editorInfo.initialSelStart;
|
|
||||||
mLastSelectionEnd = editorInfo.initialSelEnd;
|
|
||||||
mApplicationSpecifiedCompletions = null;
|
mApplicationSpecifiedCompletions = null;
|
||||||
|
|
||||||
inputView.closing();
|
final boolean selectionChanged = mLastSelectionStart != editorInfo.initialSelStart
|
||||||
|
|| mLastSelectionEnd != editorInfo.initialSelEnd;
|
||||||
|
if (!restarting || selectionChanged) {
|
||||||
|
// If the selection changed, we reset the input state. Essentially, we come here with
|
||||||
|
// restarting == true when the app called setText() or similar. We should reset the
|
||||||
|
// state if the app set the text to something else, but keep it if it set a suggestion
|
||||||
|
// or something.
|
||||||
mEnteredText = null;
|
mEnteredText = null;
|
||||||
resetComposingState(true /* alsoResetLastComposedWord */);
|
resetComposingState(true /* alsoResetLastComposedWord */);
|
||||||
mDeleteCount = 0;
|
mDeleteCount = 0;
|
||||||
mSpaceState = SPACE_STATE_NONE;
|
mSpaceState = SPACE_STATE_NONE;
|
||||||
|
|
||||||
|
if (mSuggestionStripView != null) {
|
||||||
|
mSuggestionStripView.clear();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!restarting) {
|
||||||
|
inputView.closing();
|
||||||
loadSettings();
|
loadSettings();
|
||||||
|
|
||||||
if (mSuggest != null && mCurrentSettings.mCorrectionEnabled) {
|
if (mSuggest != null && mCurrentSettings.mCorrectionEnabled) {
|
||||||
|
@ -682,12 +695,13 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
|
||||||
|
|
||||||
switcher.loadKeyboard(editorInfo, mCurrentSettings);
|
switcher.loadKeyboard(editorInfo, mCurrentSettings);
|
||||||
updateKeyboardViewGestureHandlingModeByMainDictionaryAvailability();
|
updateKeyboardViewGestureHandlingModeByMainDictionaryAvailability();
|
||||||
|
}
|
||||||
if (mSuggestionStripView != null)
|
|
||||||
mSuggestionStripView.clear();
|
|
||||||
setSuggestionStripShownInternal(
|
setSuggestionStripShownInternal(
|
||||||
isSuggestionsStripVisible(), /* needsInputViewShown */ false);
|
isSuggestionsStripVisible(), /* needsInputViewShown */ false);
|
||||||
|
|
||||||
|
mLastSelectionStart = editorInfo.initialSelStart;
|
||||||
|
mLastSelectionEnd = editorInfo.initialSelEnd;
|
||||||
|
|
||||||
mHandler.cancelUpdateSuggestionStrip();
|
mHandler.cancelUpdateSuggestionStrip();
|
||||||
mHandler.cancelDoubleSpacesTimer();
|
mHandler.cancelDoubleSpacesTimer();
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue