summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/dialpadview
diff options
context:
space:
mode:
authorroldenburg <roldenburg@google.com>2018-01-30 17:40:21 -0800
committerCopybara-Service <copybara-piper@google.com>2018-01-30 17:47:11 -0800
commit12c4e719d452599593f6be408801ff7a5cf82db6 (patch)
treec5c46f8a949ff7a404c5e25b6e5327c0fda80f42 /java/com/android/dialer/dialpadview
parentd6b91d1f57b6da8e09a459609498b49abafe5445 (diff)
Limit new special codes
Bug: 72162360 Test: SpecialCharSequenceMgrTest PiperOrigin-RevId: 183921310 Change-Id: I3a47106a42a6e7c3b903f595f690c7d125e72a04
Diffstat (limited to 'java/com/android/dialer/dialpadview')
-rw-r--r--java/com/android/dialer/dialpadview/SpecialCharSequenceMgr.java19
1 files changed, 15 insertions, 4 deletions
diff --git a/java/com/android/dialer/dialpadview/SpecialCharSequenceMgr.java b/java/com/android/dialer/dialpadview/SpecialCharSequenceMgr.java
index 2e4caa920..ca548ff23 100644
--- a/java/com/android/dialer/dialpadview/SpecialCharSequenceMgr.java
+++ b/java/com/android/dialer/dialpadview/SpecialCharSequenceMgr.java
@@ -31,6 +31,7 @@ import android.database.Cursor;
import android.net.Uri;
import android.provider.Settings;
import android.support.annotation.Nullable;
+import android.support.annotation.VisibleForTesting;
import android.telecom.PhoneAccount;
import android.telecom.PhoneAccountHandle;
import android.telephony.PhoneNumberUtils;
@@ -77,6 +78,19 @@ public class SpecialCharSequenceMgr {
private static final String ADN_NAME_COLUMN_NAME = "name";
private static final int ADN_QUERY_TOKEN = -1;
+
+ @VisibleForTesting
+ static final List<String> TRANSSION_CODES =
+ new ArrayList<String>() {
+ {
+ add("*#07#");
+ add("*#87#");
+ add("#43#");
+ add("*#2727#");
+ add("#88#");
+ }
+ };
+
/**
* Remembers the previous {@link QueryHandler} and cancel the operation when needed, to prevent
* possible crash.
@@ -144,10 +158,7 @@ public class SpecialCharSequenceMgr {
TelephonyManagerCompat.handleSecretCode(context, secretCode);
return true;
}
- if (input.length() >= 4
- && input.startsWith("*#")
- && input.endsWith("#")
- && Character.isDigit(input.charAt(2))) {
+ if (TRANSSION_CODES.contains(input)) {
String secretCode = input.substring(2, input.length() - 1);
TelephonyManagerCompat.handleSecretCode(context, secretCode);
return true;