Add hintLabel to Key constructor
This change also partialy reverts I5832421c, because of incorrect popup mini key width calculation. Bug: 5023981 Change-Id: I1acde090c01d3d861fcc5559cad81e638de2c2bb
This commit is contained in:
parent
619f707c95
commit
be34d97334
2 changed files with 8 additions and 9 deletions
|
@ -195,15 +195,15 @@ public class Key {
|
||||||
/**
|
/**
|
||||||
* This constructor is being used only for key in popup mini keyboard.
|
* This constructor is being used only for key in popup mini keyboard.
|
||||||
*/
|
*/
|
||||||
public Key(Resources res, KeyboardParams params, CharSequence popupCharacter, int x, int y,
|
public Key(Resources res, KeyboardParams params, CharSequence popupCharacter,
|
||||||
int width, int height, int edgeFlags) {
|
CharSequence hintLabel, int x, int y, int width, int height, int edgeFlags) {
|
||||||
mHeight = height - params.mVerticalGap;
|
mHeight = height - params.mVerticalGap;
|
||||||
mHorizontalGap = params.mHorizontalGap;
|
mHorizontalGap = params.mHorizontalGap;
|
||||||
mVerticalGap = params.mVerticalGap;
|
mVerticalGap = params.mVerticalGap;
|
||||||
mVisualInsetsLeft = mVisualInsetsRight = 0;
|
mVisualInsetsLeft = mVisualInsetsRight = 0;
|
||||||
mWidth = width - mHorizontalGap;
|
mWidth = width - mHorizontalGap;
|
||||||
mEdgeFlags = edgeFlags;
|
mEdgeFlags = edgeFlags;
|
||||||
mHintLabel = null;
|
mHintLabel = hintLabel;
|
||||||
mLabelOption = 0;
|
mLabelOption = 0;
|
||||||
mFunctional = false;
|
mFunctional = false;
|
||||||
mSticky = false;
|
mSticky = false;
|
||||||
|
|
|
@ -17,7 +17,6 @@
|
||||||
package com.android.inputmethod.keyboard;
|
package com.android.inputmethod.keyboard;
|
||||||
|
|
||||||
import android.graphics.Paint;
|
import android.graphics.Paint;
|
||||||
import android.graphics.Rect;
|
|
||||||
|
|
||||||
import com.android.inputmethod.keyboard.internal.KeyboardBuilder;
|
import com.android.inputmethod.keyboard.internal.KeyboardBuilder;
|
||||||
import com.android.inputmethod.keyboard.internal.KeyboardParams;
|
import com.android.inputmethod.keyboard.internal.KeyboardParams;
|
||||||
|
@ -235,6 +234,8 @@ public class MiniKeyboard extends Keyboard {
|
||||||
|
|
||||||
private static int getMaxKeyWidth(KeyboardView view, CharSequence[] popupCharacters,
|
private static int getMaxKeyWidth(KeyboardView view, CharSequence[] popupCharacters,
|
||||||
int minKeyWidth) {
|
int minKeyWidth) {
|
||||||
|
final int padding = (int) view.getContext().getResources()
|
||||||
|
.getDimension(R.dimen.mini_keyboard_key_horizontal_padding);
|
||||||
Paint paint = null;
|
Paint paint = null;
|
||||||
int maxWidth = minKeyWidth;
|
int maxWidth = minKeyWidth;
|
||||||
for (CharSequence popupSpec : popupCharacters) {
|
for (CharSequence popupSpec : popupCharacters) {
|
||||||
|
@ -246,15 +247,13 @@ public class MiniKeyboard extends Keyboard {
|
||||||
paint = new Paint();
|
paint = new Paint();
|
||||||
paint.setAntiAlias(true);
|
paint.setAntiAlias(true);
|
||||||
}
|
}
|
||||||
final int width = (int)view.getDefaultLabelWidth(label, paint);
|
final int width = (int)view.getDefaultLabelWidth(label, paint) + padding;
|
||||||
if (maxWidth < width) {
|
if (maxWidth < width) {
|
||||||
maxWidth = width;
|
maxWidth = width;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
final int horizontalPadding = (int) view.getContext().getResources()
|
return maxWidth;
|
||||||
.getDimension(R.dimen.mini_keyboard_key_horizontal_padding);
|
|
||||||
return maxWidth + horizontalPadding;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -263,7 +262,7 @@ public class MiniKeyboard extends Keyboard {
|
||||||
for (int n = 0; n < mPopupCharacters.length; n++) {
|
for (int n = 0; n < mPopupCharacters.length; n++) {
|
||||||
final CharSequence label = mPopupCharacters[n];
|
final CharSequence label = mPopupCharacters[n];
|
||||||
final int row = n / params.mNumColumns;
|
final int row = n / params.mNumColumns;
|
||||||
final Key key = new Key(mResources, params, label, params.getX(n, row),
|
final Key key = new Key(mResources, params, label, null, params.getX(n, row),
|
||||||
params.getY(row), params.mDefaultKeyWidth, params.mDefaultRowHeight,
|
params.getY(row), params.mDefaultKeyWidth, params.mDefaultRowHeight,
|
||||||
params.getRowFlags(row));
|
params.getRowFlags(row));
|
||||||
params.onAddKey(key);
|
params.onAddKey(key);
|
||||||
|
|
Loading…
Reference in a new issue