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

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

Show "Touch again to save" in system locale

Bug: 12811156
Change-Id: I928daf17297ec5c526720850d6203cb9af0496ac
parent bf2f0892
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -42,6 +42,7 @@
            android:id="@+id/hint_add_to_dictionary"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:textAlignment="viewStart"
            style="?attr/suggestionWordStyle" />
    </LinearLayout>
</merge>
+1 −2
Original line number Diff line number Diff line
@@ -1498,8 +1498,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
        }
        if (showingAddToDictionaryHint
                && suggest.mDictionaryFacilitator.isUserDictionaryEnabled()) {
            mSuggestionStripView.showAddToDictionaryHint(
                    suggestion, currentSettings.mHintToSaveText);
            mSuggestionStripView.showAddToDictionaryHint(suggestion);
        } else {
            // If we're not showing the "Touch again to save", then update the suggestion strip.
            mHandler.postUpdateSuggestionStrip();
+0 −2
Original line number Diff line number Diff line
@@ -49,7 +49,6 @@ public final class SettingsValues {
    // From resources:
    public final SpacingAndPunctuations mSpacingAndPunctuations;
    public final int mDelayUpdateOldSuggestions;
    public final CharSequence mHintToSaveText;

    // From preferences, in the same order as xml/prefs.xml:
    public final boolean mAutoCap;
@@ -101,7 +100,6 @@ public final class SettingsValues {
        // Get the resources
        mDelayUpdateOldSuggestions = res.getInteger(R.integer.config_delay_update_old_suggestions);
        mSpacingAndPunctuations = new SpacingAndPunctuations(res);
        mHintToSaveText = res.getText(R.string.hint_add_to_dictionary);

        // Store the input attributes
        if (null == inputAttributes) {
+9 −4
Original line number Diff line number Diff line
@@ -50,6 +50,7 @@ import com.android.inputmethod.latin.R;
import com.android.inputmethod.latin.SuggestedWords;
import com.android.inputmethod.latin.utils.AutoCorrectionUtils;
import com.android.inputmethod.latin.utils.ResourceUtils;
import com.android.inputmethod.latin.utils.SubtypeLocaleUtils;
import com.android.inputmethod.latin.utils.ViewLayoutUtils;

import java.util.ArrayList;
@@ -459,7 +460,7 @@ final class SuggestionStripLayoutHelper {
    }

    public void layoutAddToDictionaryHint(final String word, final ViewGroup addToDictionaryStrip,
            final int stripWidth, final CharSequence hintText) {
            final int stripWidth) {
        final int width = stripWidth - mDividerWidth - mPadding * 2;

        final TextView wordView = (TextView)addToDictionaryStrip.findViewById(R.id.word_to_save);
@@ -473,13 +474,17 @@ final class SuggestionStripLayoutHelper {

        final TextView hintView = (TextView)addToDictionaryStrip.findViewById(
                R.id.hint_add_to_dictionary);
        hintView.setGravity(Gravity.LEFT | Gravity.CENTER_VERTICAL | GravityCompat.START);
        hintView.setTextColor(mColorAutoCorrect);
        final boolean isRtlLanguage = (ViewCompat.getLayoutDirection(addToDictionaryStrip)
                == ViewCompat.LAYOUT_DIRECTION_RTL);
        final String hintWithArrow = (isRtlLanguage ? RIGHTWARDS_ARROW : LEFTWARDS_ARROW)
                + hintText;
        final String arrow = isRtlLanguage ? RIGHTWARDS_ARROW : LEFTWARDS_ARROW;
        final Resources res = addToDictionaryStrip.getResources();
        final boolean isRtlSystem = SubtypeLocaleUtils.isRtlLanguage(res.getConfiguration().locale);
        final CharSequence hintText = res.getText(R.string.hint_add_to_dictionary);
        final String hintWithArrow = (isRtlLanguage == isRtlSystem)
                ? (arrow + hintText) : (hintText + arrow);
        final int hintWidth = width - wordWidth;
        hintView.setTextScaleX(1.0f); // Reset textScaleX.
        final float hintScaleX = getTextScaleX(hintWithArrow, hintWidth, hintView.getPaint());
        hintView.setText(hintWithArrow);
        hintView.setTextScaleX(hintScaleX);
+2 −2
Original line number Diff line number Diff line
@@ -186,8 +186,8 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick
        return mStripVisibilityGroup.isShowingAddToDictionaryStrip();
    }

    public void showAddToDictionaryHint(final String word, final CharSequence hintText) {
        mLayoutHelper.layoutAddToDictionaryHint(word, mAddToDictionaryStrip, getWidth(), hintText);
    public void showAddToDictionaryHint(final String word) {
        mLayoutHelper.layoutAddToDictionaryHint(word, mAddToDictionaryStrip, getWidth());
        // {@link TextView#setTag()} is used to hold the word to be added to dictionary. The word
        // will be extracted at {@link #onClick(View)}.
        mAddToDictionaryStrip.setTag(word);
Loading