am ba635ad3: Merge "Restart suggestions when restarting input"

* commit 'ba635ad30d4a0951860448a628ccc1a5cb1eb466':
  Restart suggestions when restarting input
This commit is contained in:
Jean Chalard 2014-04-16 10:45:42 +00:00 committed by Android Git Automerger
commit 93e166338a
3 changed files with 9 additions and 3 deletions

View file

@ -819,9 +819,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
// When rotating, initialSelStart and initialSelEnd sometimes are lying. Make a best
// effort to work around this bug.
mInputLogic.mConnection.tryFixLyingCursorPosition();
if (isDifferentTextField) {
mHandler.postResumeSuggestions();
}
mHandler.postResumeSuggestions();
canReachInputConnection = true;
}

View file

@ -1284,6 +1284,10 @@ public final class InputLogic {
|| !settingsValues.mSpacingAndPunctuations.mCurrentLanguageHasSpaces
// If no suggestions are requested, don't try restarting suggestions.
|| !settingsValues.isSuggestionsRequested()
// If we are currently in a batch input, we must not resume suggestions, or the result
// of the batch input will replace the new composition. This may happen in the corner case
// that the app moves the cursor on its own accord during a batch input.
|| mInputLogicHandler.isInBatchInput()
// If the cursor is not touching a word, or if there is a selection, return right away.
|| mConnection.hasSelection()
// If we don't know the cursor location, return.

View file

@ -110,6 +110,10 @@ class InputLogicHandler implements Handler.Callback {
}
}
public boolean isInBatchInput() {
return mInBatchInput;
}
/**
* Fetch suggestions corresponding to an update of a batch input.
* @param batchPointers the updated pointers, including the part that was passed last time.