Loading java/com/android/dialer/dialpadview/SpecialCharSequenceMgr.java +18 −13 Original line number Original line Diff line number Diff line Loading @@ -59,14 +59,15 @@ import com.android.contacts.common.widget.SelectPhoneAccountDialogFragment.Selec import com.android.dialer.common.Assert; import com.android.dialer.common.Assert; import com.android.dialer.common.LogUtil; import com.android.dialer.common.LogUtil; import com.android.dialer.compat.telephony.TelephonyManagerCompat; import com.android.dialer.compat.telephony.TelephonyManagerCompat; import com.android.dialer.configprovider.ConfigProviderBindings; import com.android.dialer.oem.MotorolaUtils; import com.android.dialer.oem.MotorolaUtils; import com.android.dialer.telecom.TelecomUtil; import com.android.dialer.telecom.TelecomUtil; import com.android.dialer.util.PermissionsUtil; import com.android.dialer.util.PermissionsUtil; import com.google.common.collect.ImmutableSet; import com.google.zxing.BarcodeFormat; import com.google.zxing.BarcodeFormat; import com.google.zxing.MultiFormatWriter; import com.google.zxing.MultiFormatWriter; import com.google.zxing.WriterException; import com.google.zxing.WriterException; import com.google.zxing.common.BitMatrix; import com.google.zxing.common.BitMatrix; import java.util.ArrayList; import java.util.Arrays; import java.util.Arrays; import java.util.List; import java.util.List; import java.util.Locale; import java.util.Locale; Loading @@ -93,17 +94,8 @@ public class SpecialCharSequenceMgr { private static final String ADN_NAME_COLUMN_NAME = "name"; private static final String ADN_NAME_COLUMN_NAME = "name"; private static final int ADN_QUERY_TOKEN = -1; private static final int ADN_QUERY_TOKEN = -1; @VisibleForTesting /** Comma separated MMI codes specific to OEM/device. */ static final List<String> TRANSSION_CODES = @VisibleForTesting static final String CONFIG_OEM_MMI_CODES_CSV = "oem_mmi_codes_csv"; 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 * Remembers the previous {@link QueryHandler} and cancel the operation when needed, to prevent Loading Loading @@ -172,7 +164,8 @@ public class SpecialCharSequenceMgr { TelephonyManagerCompat.handleSecretCode(context, secretCode); TelephonyManagerCompat.handleSecretCode(context, secretCode); return true; return true; } } if (TRANSSION_CODES.contains(input)) { if (getOemSecretCodes(context).contains(input)) { String secretCode = input.substring(2, input.length() - 1); String secretCode = input.substring(2, input.length() - 1); TelephonyManagerCompat.handleSecretCode(context, secretCode); TelephonyManagerCompat.handleSecretCode(context, secretCode); return true; return true; Loading @@ -180,6 +173,18 @@ public class SpecialCharSequenceMgr { return false; return false; } } /** * Get the OEM codes from the config provider. The config provider should be aware of the device * and manufacturer. */ private static ImmutableSet<String> getOemSecretCodes(Context context) { String csv = ConfigProviderBindings.get(context).getString(CONFIG_OEM_MMI_CODES_CSV, null); if (TextUtils.isEmpty(csv)) { return ImmutableSet.of(); } return ImmutableSet.copyOf(csv.split(",")); } /** /** * Handle ADN requests by filling in the SIM contact number into the requested EditText. * Handle ADN requests by filling in the SIM contact number into the requested EditText. * * Loading Loading
java/com/android/dialer/dialpadview/SpecialCharSequenceMgr.java +18 −13 Original line number Original line Diff line number Diff line Loading @@ -59,14 +59,15 @@ import com.android.contacts.common.widget.SelectPhoneAccountDialogFragment.Selec import com.android.dialer.common.Assert; import com.android.dialer.common.Assert; import com.android.dialer.common.LogUtil; import com.android.dialer.common.LogUtil; import com.android.dialer.compat.telephony.TelephonyManagerCompat; import com.android.dialer.compat.telephony.TelephonyManagerCompat; import com.android.dialer.configprovider.ConfigProviderBindings; import com.android.dialer.oem.MotorolaUtils; import com.android.dialer.oem.MotorolaUtils; import com.android.dialer.telecom.TelecomUtil; import com.android.dialer.telecom.TelecomUtil; import com.android.dialer.util.PermissionsUtil; import com.android.dialer.util.PermissionsUtil; import com.google.common.collect.ImmutableSet; import com.google.zxing.BarcodeFormat; import com.google.zxing.BarcodeFormat; import com.google.zxing.MultiFormatWriter; import com.google.zxing.MultiFormatWriter; import com.google.zxing.WriterException; import com.google.zxing.WriterException; import com.google.zxing.common.BitMatrix; import com.google.zxing.common.BitMatrix; import java.util.ArrayList; import java.util.Arrays; import java.util.Arrays; import java.util.List; import java.util.List; import java.util.Locale; import java.util.Locale; Loading @@ -93,17 +94,8 @@ public class SpecialCharSequenceMgr { private static final String ADN_NAME_COLUMN_NAME = "name"; private static final String ADN_NAME_COLUMN_NAME = "name"; private static final int ADN_QUERY_TOKEN = -1; private static final int ADN_QUERY_TOKEN = -1; @VisibleForTesting /** Comma separated MMI codes specific to OEM/device. */ static final List<String> TRANSSION_CODES = @VisibleForTesting static final String CONFIG_OEM_MMI_CODES_CSV = "oem_mmi_codes_csv"; 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 * Remembers the previous {@link QueryHandler} and cancel the operation when needed, to prevent Loading Loading @@ -172,7 +164,8 @@ public class SpecialCharSequenceMgr { TelephonyManagerCompat.handleSecretCode(context, secretCode); TelephonyManagerCompat.handleSecretCode(context, secretCode); return true; return true; } } if (TRANSSION_CODES.contains(input)) { if (getOemSecretCodes(context).contains(input)) { String secretCode = input.substring(2, input.length() - 1); String secretCode = input.substring(2, input.length() - 1); TelephonyManagerCompat.handleSecretCode(context, secretCode); TelephonyManagerCompat.handleSecretCode(context, secretCode); return true; return true; Loading @@ -180,6 +173,18 @@ public class SpecialCharSequenceMgr { return false; return false; } } /** * Get the OEM codes from the config provider. The config provider should be aware of the device * and manufacturer. */ private static ImmutableSet<String> getOemSecretCodes(Context context) { String csv = ConfigProviderBindings.get(context).getString(CONFIG_OEM_MMI_CODES_CSV, null); if (TextUtils.isEmpty(csv)) { return ImmutableSet.of(); } return ImmutableSet.copyOf(csv.split(",")); } /** /** * Handle ADN requests by filling in the SIM contact number into the requested EditText. * Handle ADN requests by filling in the SIM contact number into the requested EditText. * * Loading