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

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

Fix more suggestions text width calculation

Bug: 7345983
Change-Id: Ic1554db98e7aaf032eb90a98c0c37c7c789461b5
parent c1bcb8ee
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -105,7 +105,7 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy {
    private static final String TAG = KeyboardView.class.getSimpleName();
    private static final String TAG = KeyboardView.class.getSimpleName();


    // XML attributes
    // XML attributes
    private final KeyVisualAttributes mKeyVisualAttributes;
    protected final KeyVisualAttributes mKeyVisualAttributes;
    private final int mKeyLabelHorizontalPadding;
    private final int mKeyLabelHorizontalPadding;
    private final float mKeyHintLetterPadding;
    private final float mKeyHintLetterPadding;
    private final float mKeyPopupHintLetterPadding;
    private final float mKeyPopupHintLetterPadding;
@@ -733,6 +733,7 @@ public class KeyboardView extends View implements PointerTracker.DrawingProxy {
        return width;
        return width;
    }
    }


    // TODO: Remove this method.
    public float getLabelWidth(final String label, final Paint paint) {
    public float getLabelWidth(final String label, final Paint paint) {
        paint.getTextBounds(label, 0, label.length(), mTextBounds);
        paint.getTextBounds(label, 0, label.length(), mTextBounds);
        return mTextBounds.width();
        return mTextBounds.width();
+3 −1
Original line number Original line Diff line number Diff line
@@ -51,10 +51,11 @@ public final class MoreSuggestions extends Keyboard {
            super();
            super();
        }
        }


        // TODO: Remove {@link MoreSuggestionsView} argument.
        public int layout(final SuggestedWords suggestions, final int fromPos, final int maxWidth,
        public int layout(final SuggestedWords suggestions, final int fromPos, final int maxWidth,
                final int minWidth, final int maxRow, final MoreSuggestionsView view) {
                final int minWidth, final int maxRow, final MoreSuggestionsView view) {
            clearKeys();
            clearKeys();
            final Resources res = view.getContext().getResources();
            final Resources res = view.getResources();
            mDivider = res.getDrawable(R.drawable.more_suggestions_divider);
            mDivider = res.getDrawable(R.drawable.more_suggestions_divider);
            mDividerWidth = mDivider.getIntrinsicWidth();
            mDividerWidth = mDivider.getIntrinsicWidth();
            final int padding = (int) res.getDimension(
            final int padding = (int) res.getDimension(
@@ -181,6 +182,7 @@ public final class MoreSuggestions extends Keyboard {
            load(xmlId, keyboard.mId);
            load(xmlId, keyboard.mId);
            mParams.mVerticalGap = mParams.mTopPadding = keyboard.mVerticalGap / 2;
            mParams.mVerticalGap = mParams.mTopPadding = keyboard.mVerticalGap / 2;


            mPaneView.updateKeyboardGeometry(mParams.mDefaultRowHeight);
            final int count = mParams.layout(suggestions, fromPos, maxWidth, minWidth, maxRow,
            final int count = mParams.layout(suggestions, fromPos, maxWidth, minWidth, maxRow,
                    mPaneView);
                    mPaneView);
            mFromPos = fromPos;
            mFromPos = fromPos;
+4 −0
Original line number Original line Diff line number Diff line
@@ -105,6 +105,10 @@ public final class MoreSuggestionsView extends KeyboardView implements MoreKeysP
        }
        }
    }
    }


    public void updateKeyboardGeometry(final int keyHeight) {
        mKeyDrawParams.updateParams(keyHeight, mKeyVisualAttributes);
    }

    @Override
    @Override
    public void setKeyboard(Keyboard keyboard) {
    public void setKeyboard(Keyboard keyboard) {
        super.setKeyboard(keyboard);
        super.setKeyboard(keyboard);