diff --git a/app/src/main/java/io/github/sspanak/tt9/hacks/InputType.java b/app/src/main/java/io/github/sspanak/tt9/hacks/InputType.java
index f49b9c1b..8e25788b 100644
--- a/app/src/main/java/io/github/sspanak/tt9/hacks/InputType.java
+++ b/app/src/main/java/io/github/sspanak/tt9/hacks/InputType.java
@@ -55,6 +55,13 @@ public class InputType extends StandardInputType {
}
+ public boolean isCalculator() {
+ return field != null
+ && (field.packageName.endsWith("calculator") || field.packageName.endsWith(".calc"))
+ && (field.inputType & EditorInfo.TYPE_MASK_CLASS) == EditorInfo.TYPE_CLASS_NUMBER;
+ }
+
+
/**
* isDuoLingoReportBug
* When reporting a bug in the Duolingo app, the text field is missing the TYPE_TEXT flag, which
@@ -211,12 +218,10 @@ public class InputType extends StandardInputType {
* they don't have a physical keyboard.
* Beeps on CAT S22 Flip
* The UI does not appear on Xiaomi Redmi 12c
+ * UI not hiding in 3rd-party calculators
*/
protected boolean isSpecialNumeric(Context context) {
- return
- field.packageName.contains("com.android.calculator") // there is "calculator2", hence the contains()
- || isDumbPhoneDialer(context)
- || isLgX100SDialer();
+ return isCalculator() || isDumbPhoneDialer(context) || isLgX100SDialer();
}