Cleanup icon drawable related code
Bug: 5023981 Change-Id: I729354f32797eef354ec9af8e05f17839f0a361cmain
parent
cb1cc0d0de
commit
b118d4cb58
|
@ -324,16 +324,13 @@ public class Key {
|
||||||
mPreviewIcon = iconsSet.getIcon(style.getInt(
|
mPreviewIcon = iconsSet.getIcon(style.getInt(
|
||||||
keyAttr, R.styleable.Keyboard_Key_keyIconPreview,
|
keyAttr, R.styleable.Keyboard_Key_keyIconPreview,
|
||||||
KeyboardIconsSet.ICON_UNDEFINED));
|
KeyboardIconsSet.ICON_UNDEFINED));
|
||||||
Keyboard.setDefaultBounds(mPreviewIcon);
|
|
||||||
mIcon = iconsSet.getIcon(style.getInt(
|
mIcon = iconsSet.getIcon(style.getInt(
|
||||||
keyAttr, R.styleable.Keyboard_Key_keyIcon,
|
keyAttr, R.styleable.Keyboard_Key_keyIcon,
|
||||||
KeyboardIconsSet.ICON_UNDEFINED));
|
KeyboardIconsSet.ICON_UNDEFINED));
|
||||||
Keyboard.setDefaultBounds(mIcon);
|
|
||||||
final int shiftedIconId = style.getInt(keyAttr, R.styleable.Keyboard_Key_keyIconShifted,
|
final int shiftedIconId = style.getInt(keyAttr, R.styleable.Keyboard_Key_keyIconShifted,
|
||||||
KeyboardIconsSet.ICON_UNDEFINED);
|
KeyboardIconsSet.ICON_UNDEFINED);
|
||||||
if (shiftedIconId != KeyboardIconsSet.ICON_UNDEFINED) {
|
if (shiftedIconId != KeyboardIconsSet.ICON_UNDEFINED) {
|
||||||
final Drawable shiftedIcon = iconsSet.getIcon(shiftedIconId);
|
final Drawable shiftedIcon = iconsSet.getIcon(shiftedIconId);
|
||||||
Keyboard.setDefaultBounds(shiftedIcon);
|
|
||||||
mKeyboard.addShiftedIcon(this, shiftedIcon);
|
mKeyboard.addShiftedIcon(this, shiftedIcon);
|
||||||
}
|
}
|
||||||
mHintLabel = style.getText(keyAttr, R.styleable.Keyboard_Key_keyHintLabel);
|
mHintLabel = style.getText(keyAttr, R.styleable.Keyboard_Key_keyHintLabel);
|
||||||
|
|
|
@ -431,10 +431,4 @@ public class Keyboard {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void setDefaultBounds(Drawable drawable) {
|
|
||||||
if (drawable != null)
|
|
||||||
drawable.setBounds(0, 0, drawable.getIntrinsicWidth(),
|
|
||||||
drawable.getIntrinsicHeight());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,7 +21,6 @@ import android.content.res.TypedArray;
|
||||||
import android.graphics.drawable.Drawable;
|
import android.graphics.drawable.Drawable;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import com.android.inputmethod.keyboard.Keyboard;
|
|
||||||
import com.android.inputmethod.latin.R;
|
import com.android.inputmethod.latin.R;
|
||||||
|
|
||||||
public class KeyboardIconsSet {
|
public class KeyboardIconsSet {
|
||||||
|
@ -51,7 +50,7 @@ public class KeyboardIconsSet {
|
||||||
|
|
||||||
private final Drawable mIcons[] = new Drawable[ICON_LAST + 1];
|
private final Drawable mIcons[] = new Drawable[ICON_LAST + 1];
|
||||||
|
|
||||||
private static final int getIconId(int attrIndex) {
|
private static final int getIconId(final int attrIndex) {
|
||||||
switch (attrIndex) {
|
switch (attrIndex) {
|
||||||
case R.styleable.Keyboard_iconShiftKey:
|
case R.styleable.Keyboard_iconShiftKey:
|
||||||
return ICON_SHIFT_KEY;
|
return ICON_SHIFT_KEY;
|
||||||
|
@ -86,16 +85,14 @@ public class KeyboardIconsSet {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void loadIcons(TypedArray keyboardAttrs) {
|
public void loadIcons(final TypedArray keyboardAttrs) {
|
||||||
final int count = keyboardAttrs.getIndexCount();
|
final int count = keyboardAttrs.getIndexCount();
|
||||||
for (int i = 0; i < count; i++) {
|
for (int i = 0; i < count; i++) {
|
||||||
final int attrIndex = keyboardAttrs.getIndex(i);
|
final int attrIndex = keyboardAttrs.getIndex(i);
|
||||||
final int iconId = getIconId(attrIndex);
|
final int iconId = getIconId(attrIndex);
|
||||||
if (iconId != ICON_UNDEFINED) {
|
if (iconId != ICON_UNDEFINED) {
|
||||||
try {
|
try {
|
||||||
final Drawable icon = keyboardAttrs.getDrawable(attrIndex);
|
mIcons[iconId] = setDefaultBounds(keyboardAttrs.getDrawable(attrIndex));
|
||||||
Keyboard.setDefaultBounds(icon);
|
|
||||||
mIcons[iconId] = icon;
|
|
||||||
} catch (Resources.NotFoundException e) {
|
} catch (Resources.NotFoundException e) {
|
||||||
Log.w(TAG, "Drawable resource for icon #" + iconId + " not found");
|
Log.w(TAG, "Drawable resource for icon #" + iconId + " not found");
|
||||||
}
|
}
|
||||||
|
@ -103,11 +100,18 @@ public class KeyboardIconsSet {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public Drawable getIcon(int iconId) {
|
public Drawable getIcon(final int iconId) {
|
||||||
if (iconId == ICON_UNDEFINED)
|
if (iconId == ICON_UNDEFINED)
|
||||||
return null;
|
return null;
|
||||||
if (iconId < 0 || iconId >= mIcons.length)
|
if (iconId < 0 || iconId >= mIcons.length)
|
||||||
throw new IllegalArgumentException("icon id is out of range: " + iconId);
|
throw new IllegalArgumentException("icon id is out of range: " + iconId);
|
||||||
return mIcons[iconId];
|
return mIcons[iconId];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static Drawable setDefaultBounds(final Drawable icon) {
|
||||||
|
if (icon != null) {
|
||||||
|
icon.setBounds(0, 0, icon.getIntrinsicWidth(), icon.getIntrinsicHeight());
|
||||||
|
}
|
||||||
|
return icon;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue