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

Commit ab661e3e authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka
Browse files

Make "Show correction suggestions" as a binary option

Formerly "Show correction suggestions" had three options, "always
show", "show in portrait mode", and "always hide". The reason behind
"show in portrait mode" was that there may not be enough screen estate
in landscape mode to show suggestions. Because recent phone devices
have relatively large screen, we decide to remove "show in portrait
mode" option.

Bug: 15780939
Change-Id: I896d737452c3893d43ce20bd88127f10c1eb3d83
parent 825243bf
Loading
Loading
Loading
Loading
+0 −20
Original line number Diff line number Diff line
@@ -18,26 +18,6 @@
*/
-->
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <!--  Always show the suggestion strip -->
    <string name="prefs_suggestion_visibility_show_value">0</string>
    <!--  Show the suggestion strip only on portrait mode -->
    <string name="prefs_suggestion_visibility_show_only_portrait_value">1</string>
    <!--  Always hide the suggestion strip -->
    <string name="prefs_suggestion_visibility_hide_value">2</string>
    <!--  Default value of the visibility of the suggestion strip -->
    <string name="prefs_suggestion_visibility_default_value">0</string>
    <!--  Option to show/hide the suggestion strip -->
    <string-array name="prefs_suggestion_visibility_values">
       <item>@string/prefs_suggestion_visibility_show_value</item>
       <item>@string/prefs_suggestion_visibility_show_only_portrait_value</item>
       <item>@string/prefs_suggestion_visibility_hide_value</item>
    </string-array>
    <string-array name="prefs_suggestion_visibilities">
       <item>@string/prefs_suggestion_visibility_show_name</item>
       <item>@string/prefs_suggestion_visibility_show_only_portrait_name</item>
       <item>@string/prefs_suggestion_visibility_hide_name</item>
    </string-array>

    <!-- For backward compatibility.
         See {@link SettingsValues#needsToShowVoiceInputKey(SharedPreferences,Resources)} -->
    <string name="voice_mode_main">0</string>
+0 −3
Original line number Diff line number Diff line
@@ -108,9 +108,6 @@
    <string name="prefs_show_suggestions">Show correction suggestions</string>
    <!-- Description for show suggestions -->
    <string name="prefs_show_suggestions_summary">Display suggested words while typing</string>
    <string name="prefs_suggestion_visibility_show_name">Always show</string>
    <string name="prefs_suggestion_visibility_show_only_portrait_name">Show in portrait mode</string>
    <string name="prefs_suggestion_visibility_hide_name">Always hide</string>

    <!-- Option to block potentially offensive words to be shown [CHAR_LIMIT=30] -->
    <string name="prefs_block_potentially_offensive_title">Block offensive words</string>
+3 −5
Original line number Diff line number Diff line
@@ -144,13 +144,11 @@
            android:entries="@array/auto_correction_threshold_modes"
            android:defaultValue="@string/auto_correction_threshold_mode_index_modest"
            android:persistent="true" />
        <ListPreference
            android:key="show_suggestions_setting"
        <CheckBoxPreference
            android:key="show_suggestions"
            android:summary="@string/prefs_show_suggestions_summary"
            android:title="@string/prefs_show_suggestions"
            android:entryValues="@array/prefs_suggestion_visibility_values"
            android:entries="@array/prefs_suggestion_visibilities"
            android:defaultValue="@string/prefs_suggestion_visibility_default_value"
            android:defaultValue="true"
            android:persistent="true" />
        <CheckBoxPreference
            android:key="pref_key_use_personalized_dicts"
+7 −7
Original line number Diff line number Diff line
@@ -280,7 +280,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
                return;
            }
            if (!latinIme.mSettings.getCurrent()
                    .isCurrentOrientationAllowingSuggestionsPerUserSettings()) {
                    .isSuggestionsEnabledPerUserSettings()) {
                return;
            }
            removeMessages(MSG_RESUME_SUGGESTIONS);
@@ -650,7 +650,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
        mDictionaryFacilitator.resetDictionaries(this /* context */, locale,
                settingsValues.mUseContactsDict, settingsValues.mUsePersonalizedDicts,
                false /* forceReloadMainDictionary */, this);
        if (settingsValues.mAutoCorrectionEnabled) {
        if (settingsValues.mAutoCorrectionEnabledPerUserSettings) {
            mInputLogic.mSuggest.setAutoCorrectionThreshold(
                    settingsValues.mAutoCorrectionThreshold);
        }
@@ -862,7 +862,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
            mainKeyboardView.closing();
            currentSettingsValues = mSettings.getCurrent();

            if (currentSettingsValues.mAutoCorrectionEnabled) {
            if (currentSettingsValues.mAutoCorrectionEnabledPerUserSettings) {
                suggest.setAutoCorrectionThreshold(
                        currentSettingsValues.mAutoCorrectionThreshold);
            }
@@ -977,7 +977,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
     */
    @Override
    public void onExtractedTextClicked() {
        if (mSettings.getCurrent().isSuggestionsRequested()) {
        if (mSettings.getCurrent().needsToLookupSuggestions()) {
            return;
        }

@@ -995,7 +995,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
     */
    @Override
    public void onExtractedCursorMovement(final int dx, final int dy) {
        if (mSettings.getCurrent().isSuggestionsRequested()) {
        if (mSettings.getCurrent().needsToLookupSuggestions()) {
            return;
        }

@@ -1379,7 +1379,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
                ImportantNoticeUtils.shouldShowImportantNotice(this);
        final boolean shouldShowSuggestionCandidates =
                currentSettingsValues.mInputAttributes.mShouldShowSuggestions
                && currentSettingsValues.isCurrentOrientationAllowingSuggestionsPerUserSettings();
                && currentSettingsValues.isSuggestionsEnabledPerUserSettings();
        final boolean shouldShowSuggestionsStripUnlessPassword = shouldShowImportantNotice
                || currentSettingsValues.mShowsVoiceInputKey
                || shouldShowSuggestionCandidates
@@ -1403,7 +1403,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
            }
        }

        if (currentSettingsValues.isCurrentOrientationAllowingSuggestionsPerUserSettings()
        if (currentSettingsValues.isSuggestionsEnabledPerUserSettings()
                // We should clear suggestions if there is no suggestion to show.
                || noSuggestionsToShow
                || currentSettingsValues.isApplicationSpecifiedCompletionsOn()) {
+7 −7
Original line number Diff line number Diff line
@@ -745,7 +745,7 @@ public final class InputLogic {
        // a letter or a word connector.
                && settingsValues.isWordCodePoint(codePoint)
        // We never go into composing state if suggestions are not requested.
                && settingsValues.isSuggestionsRequested() &&
                && settingsValues.needsToLookupSuggestions() &&
        // In languages with spaces, we only start composing a word when we are not already
        // touching a word. In languages without spaces, the above conditions are sufficient.
                (!mConnection.isCursorTouchingWord(settingsValues.mSpacingAndPunctuations)
@@ -810,7 +810,7 @@ public final class InputLogic {
        }
        // isComposingWord() may have changed since we stored wasComposing
        if (mWordComposer.isComposingWord()) {
            if (settingsValues.mAutoCorrectionEnabled) {
            if (settingsValues.mAutoCorrectionEnabledPerUserSettings) {
                final String separator = shouldAvoidSendingCode ? LastComposedWord.NOT_A_SEPARATOR
                        : StringUtils.newSingleCodePointString(codePoint);
                commitCurrentAutoCorrection(settingsValues, separator, handler);
@@ -1029,7 +1029,7 @@ public final class InputLogic {
                }
            }
            if (inputTransaction.mSettingsValues
                    .isCurrentOrientationAllowingSuggestionsPerUserSettings()
                    .isSuggestionsEnabledPerUserSettings()
                    && inputTransaction.mSettingsValues.mSpacingAndPunctuations
                            .mCurrentLanguageHasSpaces
                    && !mConnection.isCursorFollowedByWordCharacter(
@@ -1224,7 +1224,7 @@ public final class InputLogic {
        // If correction is not enabled, we don't add words to the user history dictionary.
        // That's to avoid unintended additions in some sensitive fields, or fields that
        // expect to receive non-words.
        if (!settingsValues.mAutoCorrectionEnabled) return;
        if (!settingsValues.mAutoCorrectionEnabledPerUserSettings) return;

        if (TextUtils.isEmpty(suggestion)) return;
        final boolean wasAutoCapitalized =
@@ -1237,7 +1237,7 @@ public final class InputLogic {

    public void performUpdateSuggestionStripSync(final SettingsValues settingsValues) {
        // Check if we have a suggestion engine attached.
        if (!settingsValues.isSuggestionsRequested()) {
        if (!settingsValues.needsToLookupSuggestions()) {
            if (mWordComposer.isComposingWord()) {
                Log.w(TAG, "Called updateSuggestionsOrPredictions but suggestions were not "
                        + "requested!");
@@ -1299,7 +1299,7 @@ public final class InputLogic {
        // how to segment them yet.
                || !settingsValues.mSpacingAndPunctuations.mCurrentLanguageHasSpaces
        // If no suggestions are requested, don't try restarting suggestions.
                || !settingsValues.isSuggestionsRequested()
                || !settingsValues.needsToLookupSuggestions()
        // 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.
@@ -2003,7 +2003,7 @@ public final class InputLogic {
                new SettingsValuesForSuggestion(settingsValues.mBlockPotentiallyOffensive,
                        settingsValues.mPhraseGestureEnabled,
                        settingsValues.mAdditionalFeaturesSettingValues),
                settingsValues.mAutoCorrectionEnabled,
                settingsValues.mAutoCorrectionEnabledPerUserSettings,
                sessionId, sequenceNumber, callback);
    }
}
Loading