aboutsummaryrefslogtreecommitdiff
path: root/ime/app/src/main/java/com/anysoftkeyboard/keyboards/views/AnyKeyboardViewBase.java
diff options
context:
space:
mode:
Diffstat (limited to 'ime/app/src/main/java/com/anysoftkeyboard/keyboards/views/AnyKeyboardViewBase.java')
-rw-r--r--ime/app/src/main/java/com/anysoftkeyboard/keyboards/views/AnyKeyboardViewBase.java32
1 files changed, 31 insertions, 1 deletions
diff --git a/ime/app/src/main/java/com/anysoftkeyboard/keyboards/views/AnyKeyboardViewBase.java b/ime/app/src/main/java/com/anysoftkeyboard/keyboards/views/AnyKeyboardViewBase.java
index 630d326f4..d71a4110e 100644
--- a/ime/app/src/main/java/com/anysoftkeyboard/keyboards/views/AnyKeyboardViewBase.java
+++ b/ime/app/src/main/java/com/anysoftkeyboard/keyboards/views/AnyKeyboardViewBase.java
@@ -156,6 +156,7 @@ public class AnyKeyboardViewBase extends View implements InputViewBinder, Pointe
private float mKeyboardNameTextSize;
private FontMetrics mKeyboardNameFontMetrics;
private float mHintTextSize;
+ float mHintTextSizeMultiplier;
private FontMetrics mHintTextFontMetrics;
private int mThemeHintLabelAlign;
private int mThemeHintLabelVAlign;
@@ -224,6 +225,7 @@ public class AnyKeyboardViewBase extends View implements InputViewBinder, Pointe
mNextSymbolsKeyboardName = getResources().getString(R.string.change_symbols_regular);
final RxSharedPrefs rxSharedPrefs = AnyApplication.prefs(context);
+
mDisposables.add(
rxSharedPrefs
.getBoolean(
@@ -332,6 +334,16 @@ public class AnyKeyboardViewBase extends View implements InputViewBinder, Pointe
},
GenericOnError.onError("Failed to getKeyboardHeightFactor")));
+ mDisposables.add(
+ rxSharedPrefs
+ .getString(
+ R.string.settings_key_hint_size,
+ R.string.settings_key_hint_size_default)
+ .asObservable()
+ .subscribe(
+ this::updatePrefSettingsHintTextSizeFactor,
+ GenericOnError.onError("failed to get settings_key_hint_size")));
+
AnimationsLevel.createPrefsObservable(context).subscribe(mAnimationLevelSubject);
mDisposables.add(
@@ -1430,6 +1442,7 @@ public class AnyKeyboardViewBase extends View implements InputViewBinder, Pointe
}
if (drawHintText
+ && (mHintTextSizeMultiplier > 0)
&& ((key.popupCharacters != null && key.popupCharacters.length() > 0)
|| (key.popupResId != 0)
|| (key.longPressCode != 0))) {
@@ -1466,7 +1479,7 @@ public class AnyKeyboardViewBase extends View implements InputViewBinder, Pointe
// now draw hint
paint.setTypeface(Typeface.DEFAULT);
paint.setColor(themeResourcesHolder.getHintTextColor());
- paint.setTextSize(mHintTextSize);
+ paint.setTextSize(mHintTextSize * mHintTextSizeMultiplier);
// get the hint text font metrics so that we know the size
// of the hint when
// we try to position the main label (to try to make sure
@@ -2164,6 +2177,23 @@ public class AnyKeyboardViewBase extends View implements InputViewBinder, Pointe
}
}
+ private void updatePrefSettingsHintTextSizeFactor(final String overrideValue) {
+ switch (overrideValue) {
+ case "none":
+ mHintTextSizeMultiplier = 0f;
+ break;
+ case "small":
+ mHintTextSizeMultiplier = 0.7f;
+ break;
+ case "big":
+ mHintTextSizeMultiplier = 1.3f;
+ break;
+ default:
+ mHintTextSizeMultiplier = 1;
+ break;
+ }
+ }
+
protected static class KeyPressTimingHandler extends Handler {
private static final int MSG_REPEAT_KEY = 3;