am 07230560
: Merge "Add shared preference for re-correction" into gingerbread
Merge commit '0723056043adee17bc9b49b06a5ca7a81a804d16' into gingerbread-plus-aosp * commit '0723056043adee17bc9b49b06a5ca7a81a804d16': Add shared preference for re-correction
This commit is contained in:
commit
36d2d0e736
4 changed files with 35 additions and 15 deletions
|
@ -28,4 +28,5 @@
|
|||
<bool name="config_swipeDisambiguation">true</bool>
|
||||
<!-- Whether or not Popup on key press is enabled by default -->
|
||||
<bool name="default_popup_preview">true</bool>
|
||||
<bool name="default_recorrection_enabled">true</bool>
|
||||
</resources>
|
||||
|
|
|
@ -339,6 +339,10 @@
|
|||
<string name="prefs_enable_log">Enable user feedback</string>
|
||||
<!-- Description for enabling to send user statistics to Google. -->
|
||||
<string name="prefs_description_log">Help improve this input method editor by automatically sending usage statistics and crash reports to Google.</string>
|
||||
<!-- Preferences item for enabling to re-correct suggestions . -->
|
||||
<string name="prefs_enable_recorrection">Tap to re-correction</string>
|
||||
<!-- The summary for the preferences item for enabling to re-correct suggestions . -->
|
||||
<string name="prefs_enable_recorrection_summary">You can re-correct words by tapping words you have typed</string>
|
||||
|
||||
<!-- Description for keyboard theme switcher -->
|
||||
<string name="keyboard_layout">Keyboard Theme</string>
|
||||
|
|
|
@ -37,6 +37,13 @@
|
|||
android:defaultValue="@bool/default_popup_preview"
|
||||
/>
|
||||
|
||||
<CheckBoxPreference
|
||||
android:key="recorrection_enabled"
|
||||
android:title="@string/prefs_enable_recorrection"
|
||||
android:persistent="true"
|
||||
android:defaultValue="@bool/default_recorrection_enabled"
|
||||
/>
|
||||
|
||||
<CheckBoxPreference
|
||||
android:key="auto_cap"
|
||||
android:title="@string/auto_cap"
|
||||
|
|
|
@ -127,6 +127,7 @@ public class LatinIME extends InputMethodService
|
|||
|
||||
public static final String PREF_SELECTED_LANGUAGES = "selected_languages";
|
||||
public static final String PREF_INPUT_LANGUAGE = "input_language";
|
||||
private static final String PREF_RECORRECTION_ENABLED = "recorrection_enabled";
|
||||
|
||||
private static final int MSG_UPDATE_SUGGESTIONS = 0;
|
||||
private static final int MSG_START_TUTORIAL = 1;
|
||||
|
@ -193,6 +194,7 @@ public class LatinIME extends InputMethodService
|
|||
private boolean mAutoSpace;
|
||||
private boolean mJustAddedAutoSpace;
|
||||
private boolean mAutoCorrectEnabled;
|
||||
private boolean mReCorrectionEnabled;
|
||||
// Bigram Suggestion is disabled in this version.
|
||||
private final boolean mBigramSuggestionEnabled = false;
|
||||
private boolean mAutoCorrectOn;
|
||||
|
@ -361,6 +363,8 @@ public class LatinIME extends InputMethodService
|
|||
if (inputLanguage == null) {
|
||||
inputLanguage = conf.locale.toString();
|
||||
}
|
||||
mReCorrectionEnabled = prefs.getBoolean(PREF_RECORRECTION_ENABLED,
|
||||
getResources().getBoolean(R.bool.default_recorrection_enabled));
|
||||
|
||||
LatinIMEUtil.GCUtils.getInstance().reset();
|
||||
boolean tryGC = true;
|
||||
|
@ -769,21 +773,22 @@ public class LatinIME extends InputMethodService
|
|||
mLastSelectionStart = newSelStart;
|
||||
mLastSelectionEnd = newSelEnd;
|
||||
|
||||
|
||||
// Don't look for corrections if the keyboard is not visible
|
||||
if (mKeyboardSwitcher != null && mKeyboardSwitcher.getInputView() != null
|
||||
&& mKeyboardSwitcher.getInputView().isShown()) {
|
||||
// Check if we should go in or out of correction mode.
|
||||
if (isPredictionOn()
|
||||
&& mJustRevertedSeparator == null
|
||||
&& (candidatesStart == candidatesEnd || newSelStart != oldSelStart
|
||||
|| TextEntryState.isCorrecting())
|
||||
&& (newSelStart < newSelEnd - 1 || (!mPredicting))
|
||||
&& !mVoiceInputHighlighted) {
|
||||
if (isCursorTouchingWord() || mLastSelectionStart < mLastSelectionEnd) {
|
||||
postUpdateOldSuggestions();
|
||||
} else {
|
||||
abortCorrection(false);
|
||||
if (mReCorrectionEnabled) {
|
||||
// Don't look for corrections if the keyboard is not visible
|
||||
if (mKeyboardSwitcher != null && mKeyboardSwitcher.getInputView() != null
|
||||
&& mKeyboardSwitcher.getInputView().isShown()) {
|
||||
// Check if we should go in or out of correction mode.
|
||||
if (isPredictionOn()
|
||||
&& mJustRevertedSeparator == null
|
||||
&& (candidatesStart == candidatesEnd || newSelStart != oldSelStart
|
||||
|| TextEntryState.isCorrecting())
|
||||
&& (newSelStart < newSelEnd - 1 || (!mPredicting))
|
||||
&& !mVoiceInputHighlighted) {
|
||||
if (isCursorTouchingWord() || mLastSelectionStart < mLastSelectionEnd) {
|
||||
postUpdateOldSuggestions();
|
||||
} else {
|
||||
abortCorrection(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -2181,6 +2186,9 @@ public class LatinIME extends InputMethodService
|
|||
if (PREF_SELECTED_LANGUAGES.equals(key)) {
|
||||
mLanguageSwitcher.loadLocales(sharedPreferences);
|
||||
mRefreshKeyboardRequired = true;
|
||||
} else if (PREF_RECORRECTION_ENABLED.equals(key)) {
|
||||
mReCorrectionEnabled = sharedPreferences.getBoolean(PREF_RECORRECTION_ENABLED,
|
||||
getResources().getBoolean(R.bool.default_recorrection_enabled));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue