Always present suggestion strip whenever in appropriate mode.

Some cleanups too.

bug: 2959293
Change-Id: Idf07fc25c5700b69b93ab4b09ce34941f0d9c157
This commit is contained in:
Ken Wakasa 2010-08-31 18:00:09 +09:00
parent b24cc640c1
commit 543dbdfdbd

View file

@ -647,16 +647,14 @@ public class LatinIME extends InputMethodService
(attribute.inputType & EditorInfo.TYPE_TEXT_FLAG_MULTI_LINE) == 0) {
mInputTypeNoAutoCorrect = true;
}
if ((attribute.inputType&EditorInfo.TYPE_TEXT_FLAG_AUTO_COMPLETE) != 0) {
if ((attribute.inputType & EditorInfo.TYPE_TEXT_FLAG_AUTO_COMPLETE) != 0) {
mPredictionOn = false;
mCompletionOn = true && isFullscreenMode();
mCompletionOn = isFullscreenMode();
}
updateShiftKeyState(attribute);
break;
default:
mKeyboardSwitcher.setKeyboardMode(KeyboardSwitcher.MODE_TEXT,
attribute.imeOptions, enableVoiceButton);
updateShiftKeyState(attribute);
}
inputView.closing();
mComposing.setLength(0);
@ -666,8 +664,9 @@ public class LatinIME extends InputMethodService
loadSettings();
updateShiftKeyState(attribute);
setCandidatesViewShown(false);
setSuggestions(null, false, false, false);
setCandidatesViewShownInternal(isCandidateStripVisible() || mCompletionOn,
false /* needsInputViewShown */ );
updateSuggestions();
// If the dictionary is not big enough, don't auto correct
mHasDictionary = mSuggest.hasMainDictionary();
@ -831,18 +830,21 @@ public class LatinIME extends InputMethodService
// When in fullscreen mode, show completions generated by the application
setSuggestions(stringList, true, true, true);
mBestWord = null;
setCandidatesViewShown(isCandidateStripVisible() || mCompletionOn);
setCandidatesViewShown(true);
}
}
private void setCandidatesViewShownInternal(boolean shown, boolean needsInputViewShown) {
// TODO: Remove this if we support candidates with hard keyboard
if (onEvaluateInputViewShown()) {
super.setCandidatesViewShown(shown && mKeyboardSwitcher.getInputView() != null
&& (needsInputViewShown ? mKeyboardSwitcher.getInputView().isShown() : true));
}
}
@Override
public void setCandidatesViewShown(boolean shown) {
// TODO: Remove this if we support candidates with hard keyboard
if (onEvaluateInputViewShown()) {
// Show the candidates view only if input view is showing
super.setCandidatesViewShown(shown && mKeyboardSwitcher.getInputView() != null
&& mKeyboardSwitcher.getInputView().isShown());
}
setCandidatesViewShownInternal(shown, true /* needsInputViewShown */ );
}
@Override
@ -1430,8 +1432,7 @@ public class LatinIME extends InputMethodService
}
private boolean isPredictionOn() {
boolean predictionOn = mPredictionOn;
return predictionOn;
return mPredictionOn;
}
private boolean isCandidateStripVisible() {