remove holo_no_border theme, just make the keys transparent

This commit is contained in:
Helium314 2023-10-19 21:21:44 +02:00
parent 92e986609c
commit ae8335d816
17 changed files with 45 additions and 296 deletions

View file

@ -43,21 +43,18 @@ public final class KeyboardTheme implements Comparable<KeyboardTheme> {
// These should be aligned with Keyboard.themeId and Keyboard.Case.keyboardTheme
// attributes' values in attrs.xml.
public static final int THEME_ID_HOLO_BASE = 0;
public static final int THEME_ID_HOLO_BASE_NO_BORDER = 1;
public static final int THEME_ID_LXX_BASE = 2;
public static final int THEME_ID_LXX_BASE_BORDER = 3;
public static final int THEME_ID_LXX_BASE = 1;
public static final int THEME_ID_LXX_BASE_BORDER = 2;
public static final int DEFAULT_THEME_ID = THEME_ID_LXX_BASE;
/* package private for testing */
static final KeyboardTheme[] KEYBOARD_THEMES = {
new KeyboardTheme(THEME_ID_HOLO_BASE, "HoloBase", R.style.KeyboardTheme_HoloBase,
VERSION_CODES.BASE),
new KeyboardTheme(THEME_ID_HOLO_BASE_NO_BORDER, "HoloBaseNoBorder", R.style.KeyboardTheme_HoloBaseNoBorder,
VERSION_CODES.BASE),
new KeyboardTheme(THEME_ID_LXX_BASE, "LXXBase", R.style.KeyboardTheme_LXX_Base,
VERSION_CODES.LOLLIPOP),
new KeyboardTheme(THEME_ID_LXX_BASE_BORDER, "LXXBaseBorder", R.style.KeyboardTheme_LXX_Base_Border,
VERSION_CODES.LOLLIPOP),
new KeyboardTheme(THEME_ID_LXX_BASE, "LXXBase", R.style.KeyboardTheme_LXX_Base,
VERSION_CODES.LOLLIPOP),
new KeyboardTheme(THEME_ID_LXX_BASE_BORDER, "LXXBaseBorder", R.style.KeyboardTheme_LXX_Base_Border,
VERSION_CODES.LOLLIPOP),
};
static {
@ -121,7 +118,7 @@ public final class KeyboardTheme implements Comparable<KeyboardTheme> {
final boolean borders = prefs.getBoolean(Settings.PREF_THEME_KEY_BORDERS, false);
final int matchingId;
if (style.equals(THEME_STYLE_HOLO))
matchingId = borders ? THEME_ID_HOLO_BASE : THEME_ID_HOLO_BASE_NO_BORDER;
matchingId = THEME_ID_HOLO_BASE;
else
matchingId = borders ? THEME_ID_LXX_BASE_BORDER : THEME_ID_LXX_BASE;
for (KeyboardTheme keyboardTheme : KEYBOARD_THEMES) {

View file

@ -124,8 +124,8 @@ class Colors (
functionalKeyBackgroundFilter = keyBackgroundFilter
spaceBarFilter = colorFilter(spaceBar)
backgroundStateList = stateList(brightenOrDarken(background, true), background)
keyStateList = backgroundStateList
functionalKeyStateList = backgroundStateList
keyStateList = stateList(brightenOrDarken(background, true), Color.TRANSPARENT)
functionalKeyStateList = keyStateList
actionKeyStateList = if (themeStyle == THEME_STYLE_HOLO) functionalKeyStateList
else stateList(brightenOrDarken(accent, true), accent)
spaceBarStateList = stateList(brightenOrDarken(spaceBar, true), spaceBar)
@ -169,7 +169,10 @@ class Colors (
BackgroundType.SUGGESTION, BackgroundType.ACTION_MORE_KEYS ->
attr.getDrawable(R.styleable.KeyboardView_keyBackground)
BackgroundType.FUNCTIONAL -> attr.getDrawable(R.styleable.KeyboardView_functionalKeyBackground)
BackgroundType.SPACE -> attr.getDrawable(R.styleable.KeyboardView_spacebarBackground)
BackgroundType.SPACE -> {
if (hasKeyBorders) attr.getDrawable(R.styleable.KeyboardView_spacebarBackground)
else attr.getDrawable(R.styleable.KeyboardView_spacebarNoBorderBackground)
}
BackgroundType.ACTION -> {
if (themeStyle == THEME_STYLE_HOLO && hasKeyBorders) // no borders has a very small pressed drawable otherwise
attr.getDrawable(R.styleable.KeyboardView_functionalKeyBackground)