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

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

Use TypedArray.getFraction to read percentile values in resource

Change-Id: Ifc8b024d190efba4cd536fd639621e841eb9970e
parent 95c27259
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -187,13 +187,13 @@
        <attr name="colorTypedWord" format="color" />
        <attr name="colorAutoCorrect" format="color" />
        <attr name="colorSuggested" format="color" />
        <attr name="alphaValidTypedWord" format="integer" />
        <attr name="alphaTypedWord" format="integer" />
        <attr name="alphaAutoCorrect" format="integer" />
        <attr name="alphaSuggested" format="integer" />
        <attr name="alphaObsoleted" format="integer" />
        <attr name="alphaValidTypedWord" format="fraction" />
        <attr name="alphaTypedWord" format="fraction" />
        <attr name="alphaAutoCorrect" format="fraction" />
        <attr name="alphaSuggested" format="fraction" />
        <attr name="alphaObsoleted" format="fraction" />
        <attr name="suggestionsCountInStrip" format="integer" />
        <attr name="centerSuggestionPercentile" format="integer" />
        <attr name="centerSuggestionPercentile" format="fraction" />
        <attr name="maxMoreSuggestionsRow" format="integer" />
        <attr name="minMoreSuggestionsWidth" format="float" />
    </declare-styleable>
+1 −1
Original line number Diff line number Diff line
@@ -92,7 +92,7 @@
    <dimen name="suggestion_text_size">18dp</dimen>
    <dimen name="more_suggestions_hint_text_size">27dp</dimen>
    <integer name="suggestions_count_in_strip">3</integer>
    <integer name="center_suggestion_percentile">36</integer>
    <fraction name="center_suggestion_percentile">36%</fraction>

    <!-- Gesture preview parameters -->
    <dimen name="gesture_preview_trail_width">2.5dp</dimen>
+7 −7
Original line number Diff line number Diff line
@@ -138,9 +138,9 @@
        <item name="colorTypedWord">@android:color/white</item>
        <item name="colorAutoCorrect">#FFFCAE00</item>
        <item name="colorSuggested">#FFFCAE00</item>
        <item name="alphaObsoleted">50</item>
        <item name="alphaObsoleted">50%</item>
        <item name="suggestionsCountInStrip">@integer/suggestions_count_in_strip</item>
        <item name="centerSuggestionPercentile">@integer/center_suggestion_percentile</item>
        <item name="centerSuggestionPercentile">@fraction/center_suggestion_percentile</item>
        <item name="maxMoreSuggestionsRow">@integer/max_more_suggestions_row</item>
        <item name="minMoreSuggestionsWidth">@fraction/min_more_suggestions_width</item>
    </style>
@@ -373,12 +373,12 @@
        <item name="colorTypedWord">@android:color/holo_blue_light</item>
        <item name="colorAutoCorrect">@android:color/holo_blue_light</item>
        <item name="colorSuggested">@android:color/holo_blue_light</item>
        <item name="alphaValidTypedWord">85</item>
        <item name="alphaTypedWord">85</item>
        <item name="alphaSuggested">70</item>
        <item name="alphaObsoleted">70</item>
        <item name="alphaValidTypedWord">85%</item>
        <item name="alphaTypedWord">85%</item>
        <item name="alphaSuggested">70%</item>
        <item name="alphaObsoleted">70%</item>
        <item name="suggestionsCountInStrip">@integer/suggestions_count_in_strip</item>
        <item name="centerSuggestionPercentile">@integer/center_suggestion_percentile</item>
        <item name="centerSuggestionPercentile">@fraction/center_suggestion_percentile</item>
        <item name="maxMoreSuggestionsRow">@integer/max_more_suggestions_row</item>
        <item name="minMoreSuggestionsWidth">@fraction/min_more_suggestions_width</item>
    </style>
+17 −14
Original line number Diff line number Diff line
@@ -84,6 +84,7 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy {

    // Miscellaneous constants
    private static final int[] LONG_PRESSABLE_STATE_SET = { android.R.attr.state_long_pressable };
    private static final float UNDEFINED_RATIO = -1.0f;

    // XML attributes
    protected final float mVerticalCorrection;
@@ -202,7 +203,6 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy {
        private final float mKeyHintLetterRatio;
        private final float mKeyShiftedLetterHintRatio;
        private final float mKeyHintLabelRatio;
        private static final float UNDEFINED_RATIO = -1.0f;

        public final Rect mPadding = new Rect();
        public int mKeyLetterSize;
@@ -220,20 +220,20 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy {
                mKeyLetterRatio = UNDEFINED_RATIO;
                mKeyLetterSize = a.getDimensionPixelSize(R.styleable.KeyboardView_keyLetterSize, 0);
            } else {
                mKeyLetterRatio = getRatio(a, R.styleable.KeyboardView_keyLetterRatio);
                mKeyLetterRatio = getFraction(a, R.styleable.KeyboardView_keyLetterRatio);
            }
            if (a.hasValue(R.styleable.KeyboardView_keyLabelSize)) {
                mKeyLabelRatio = UNDEFINED_RATIO;
                mKeyLabelSize = a.getDimensionPixelSize(R.styleable.KeyboardView_keyLabelSize, 0);
            } else {
                mKeyLabelRatio = getRatio(a, R.styleable.KeyboardView_keyLabelRatio);
                mKeyLabelRatio = getFraction(a, R.styleable.KeyboardView_keyLabelRatio);
            }
            mKeyLargeLabelRatio = getRatio(a, R.styleable.KeyboardView_keyLargeLabelRatio);
            mKeyLargeLetterRatio = getRatio(a, R.styleable.KeyboardView_keyLargeLetterRatio);
            mKeyHintLetterRatio = getRatio(a, R.styleable.KeyboardView_keyHintLetterRatio);
            mKeyShiftedLetterHintRatio = getRatio(a,
            mKeyLargeLabelRatio = getFraction(a, R.styleable.KeyboardView_keyLargeLabelRatio);
            mKeyLargeLetterRatio = getFraction(a, R.styleable.KeyboardView_keyLargeLetterRatio);
            mKeyHintLetterRatio = getFraction(a, R.styleable.KeyboardView_keyHintLetterRatio);
            mKeyShiftedLetterHintRatio = getFraction(a,
                    R.styleable.KeyboardView_keyShiftedLetterHintRatio);
            mKeyHintLabelRatio = getRatio(a, R.styleable.KeyboardView_keyHintLabelRatio);
            mKeyHintLabelRatio = getFraction(a, R.styleable.KeyboardView_keyHintLabelRatio);
            mKeyLabelHorizontalPadding = a.getDimension(
                    R.styleable.KeyboardView_keyLabelHorizontalPadding, 0);
            mKeyHintLetterPadding = a.getDimension(
@@ -260,10 +260,10 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy {
        }

        public void updateKeyHeight(int keyHeight) {
            if (mKeyLetterRatio >= 0.0f) {
            if (isValidFraction(mKeyLetterRatio)) {
                mKeyLetterSize = (int)(keyHeight * mKeyLetterRatio);
            }
            if (mKeyLabelRatio >= 0.0f) {
            if (isValidFraction(mKeyLabelRatio)) {
                mKeyLabelSize = (int)(keyHeight * mKeyLabelRatio);
            }
            mKeyLargeLabelSize = (int)(keyHeight * mKeyLargeLabelRatio);
@@ -338,7 +338,7 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy {
                    R.styleable.KeyboardView_keyPreviewOffset, 0);
            mPreviewHeight = a.getDimensionPixelSize(
                    R.styleable.KeyboardView_keyPreviewHeight, 80);
            mPreviewTextRatio = getRatio(a, R.styleable.KeyboardView_keyPreviewTextRatio);
            mPreviewTextRatio = getFraction(a, R.styleable.KeyboardView_keyPreviewTextRatio);
            mPreviewTextColor = a.getColor(R.styleable.KeyboardView_keyPreviewTextColor, 0);
            mLingerTimeout = a.getInt(R.styleable.KeyboardView_keyPreviewLingerTimeout, 0);

@@ -387,9 +387,12 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy {
        mPaint.setAntiAlias(true);
    }

    // Read fraction value in TypedArray as float.
    /* package */ static float getRatio(TypedArray a, int index) {
        return a.getFraction(index, 1000, 1000, 1) / 1000.0f;
    static boolean isValidFraction(final float fraction) {
        return fraction >= 0.0f;
    }

    static float getFraction(final TypedArray a, final int index) {
        return a.getFraction(index, 1, 1, UNDEFINED_RATIO);
    }

    /**
+2 −2
Original line number Diff line number Diff line
@@ -344,8 +344,8 @@ public class MainKeyboardView extends KeyboardView implements PointerTracker.Key
                R.styleable.MainKeyboardView_autoCorrectionSpacebarLedEnabled, false);
        mAutoCorrectionSpacebarLedIcon = a.getDrawable(
                R.styleable.MainKeyboardView_autoCorrectionSpacebarLedIcon);
        mSpacebarTextRatio = a.getFraction(R.styleable.MainKeyboardView_spacebarTextRatio,
                1000, 1000, 1) / 1000.0f;
        mSpacebarTextRatio = a.getFraction(
                R.styleable.MainKeyboardView_spacebarTextRatio, 1, 1, 1.0f);
        mSpacebarTextColor = a.getColor(R.styleable.MainKeyboardView_spacebarTextColor, 0);
        mSpacebarTextShadowColor = a.getColor(
                R.styleable.MainKeyboardView_spacebarTextShadowColor, 0);
Loading