From 29367f127d8927b063c1f869646d489df83079be Mon Sep 17 00:00:00 2001 From: Jules Aguillon Date: Thu, 30 Dec 2021 00:52:50 +0100 Subject: [PATCH] Move the border radius from Config to Theme Also, draw activated keys with a round border too. --- res/values/dimens.xml | 1 - res/values/themes.xml | 4 ++++ srcs/juloo.keyboard2/Config.java | 2 -- srcs/juloo.keyboard2/Keyboard2View.java | 6 ++---- srcs/juloo.keyboard2/Theme.java | 4 ++++ 5 files changed, 10 insertions(+), 7 deletions(-) diff --git a/res/values/dimens.xml b/res/values/dimens.xml index 0fe54d3..fce808b 100644 --- a/res/values/dimens.xml +++ b/res/values/dimens.xml @@ -7,7 +7,6 @@ 2dp 2dp 51dp - 5dp 18dp 12dp 56dp diff --git a/res/values/themes.xml b/res/values/themes.xml index 11689d5..0d347cd 100644 --- a/res/values/themes.xml +++ b/res/values/themes.xml @@ -13,6 +13,8 @@ + + @@ -27,6 +29,7 @@ #226b99 #229933 #A0A0A0 + 5dp #202020 #FFFFFF ?attr/emoji_button_bg @@ -40,6 +43,7 @@ #64afdd #64dd76 #5e5e5e + 5dp #dedede #000000 ?attr/emoji_button_bg diff --git a/srcs/juloo.keyboard2/Config.java b/srcs/juloo.keyboard2/Config.java index fdac104..5f59241 100644 --- a/srcs/juloo.keyboard2/Config.java +++ b/srcs/juloo.keyboard2/Config.java @@ -14,7 +14,6 @@ final class Config public final float keyPadding; public final float keyVerticalInterval; public final float keyHorizontalInterval; - public final float keyRound; // From preferences public int layout; // Or '-1' for the system defaults @@ -45,7 +44,6 @@ final class Config keyPadding = res.getDimension(R.dimen.key_padding); keyVerticalInterval = res.getDimension(R.dimen.key_vertical_interval); keyHorizontalInterval = res.getDimension(R.dimen.key_horizontal_interval); - keyRound = res.getDimension(R.dimen.key_round); // default values layout = -1; subValueDist = 10f; diff --git a/srcs/juloo.keyboard2/Keyboard2View.java b/srcs/juloo.keyboard2/Keyboard2View.java index 2edb745..10ec678 100644 --- a/srcs/juloo.keyboard2/Keyboard2View.java +++ b/srcs/juloo.keyboard2/Keyboard2View.java @@ -352,10 +352,8 @@ public class Keyboard2View extends View float keyW = _keyWidth * k.width - _config.keyHorizontalInterval; KeyDown keyDown = getKeyDown(k); _tmpRect.set(x, y, x + keyW, y + keyH); - if (keyDown != null) - canvas.drawRect(_tmpRect, _theme.keyDownBgPaint); - else - canvas.drawRoundRect(_tmpRect, _config.keyRound, _config.keyRound, _theme.keyBgPaint); + canvas.drawRoundRect(_tmpRect, _theme.keyBorderRadius, _theme.keyBorderRadius, + (keyDown != null) ? _theme.keyDownBgPaint : _theme.keyBgPaint); if (k.key0 != null) drawLabel(canvas, k.key0, keyW / 2f + x, (keyH + _theme.labelTextSize) / 2f + y, keyDown); float subPadding = _config.keyPadding; diff --git a/srcs/juloo.keyboard2/Theme.java b/srcs/juloo.keyboard2/Theme.java index 04f365f..0f46cd0 100644 --- a/srcs/juloo.keyboard2/Theme.java +++ b/srcs/juloo.keyboard2/Theme.java @@ -15,9 +15,12 @@ public class Theme public final int activatedColor; public final int labelColor; public final int subLabelColor; + public final float labelTextSize; public final float sublabelTextSize; + public final float keyBorderRadius; + private final Paint _keyLabelPaint; private final Paint _specialKeyLabelPaint; private final Paint _keySubLabelPaint; @@ -33,6 +36,7 @@ public class Theme activatedColor = s.getColor(R.styleable.keyboard_colorLabelActivated, 0); lockedColor = s.getColor(R.styleable.keyboard_colorLabelLocked, 0); subLabelColor = s.getColor(R.styleable.keyboard_colorSubLabel, 0); + keyBorderRadius = s.getDimension(R.styleable.keyboard_keyBorderRadius, 0); s.recycle(); Resources res = context.getResources(); labelTextSize = res.getDimension(R.dimen.label_text_size);