Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit aa906c36 authored by Jean Chalard's avatar Jean Chalard
Browse files

Handle correctly the restarting argument

Bug: 6851364
Change-Id: Ie939a43b8527a76aec213b702d3d850717f22a81
parent e863fb71
Loading
Loading
Loading
Loading
+30 −16
Original line number Diff line number Diff line
@@ -659,21 +659,34 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
            accessUtils.onStartInputViewInternal(editorInfo, restarting);
        }

        if (!restarting) {
            mSubtypeSwitcher.updateParametersOnStartInputView();
        }

        // The EditorInfo might have a flag that affects fullscreen mode.
        // Note: This call should be done by InputMethodService?
        updateFullscreenMode();
        mLastSelectionStart = editorInfo.initialSelStart;
        mLastSelectionEnd = editorInfo.initialSelEnd;
        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;
            resetComposingState(true /* alsoResetLastComposedWord */);
            mDeleteCount = 0;
            mSpaceState = SPACE_STATE_NONE;

            if (mSuggestionStripView != null) {
                mSuggestionStripView.clear();
            }
        }

        if (!restarting) {
            inputView.closing();
            loadSettings();

            if (mSuggest != null && mCurrentSettings.mCorrectionEnabled) {
@@ -682,12 +695,13 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen

            switcher.loadKeyboard(editorInfo, mCurrentSettings);
            updateKeyboardViewGestureHandlingModeByMainDictionaryAvailability();

        if (mSuggestionStripView != null)
            mSuggestionStripView.clear();
        }
        setSuggestionStripShownInternal(
                isSuggestionsStripVisible(), /* needsInputViewShown */ false);

        mLastSelectionStart = editorInfo.initialSelStart;
        mLastSelectionEnd = editorInfo.initialSelEnd;

        mHandler.cancelUpdateSuggestionStrip();
        mHandler.cancelDoubleSpacesTimer();