summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/smartdial
diff options
context:
space:
mode:
authorlinyuh <linyuh@google.com>2017-12-21 16:17:02 -0800
committerEric Erfanian <erfanian@google.com>2017-12-22 08:57:31 -0800
commit126c0e599ea98b639549d91ff99bc4e780d769b5 (patch)
tree841e0713a59f4e28978ad004420b41f7868fc657 /java/com/android/dialer/smartdial
parentbf4bb0555ca827e660ad05b4caf982a030211c03 (diff)
Use CHAR_TO_KEY_MAPS in DialpadCharMappings in SmartDialMaps.
This way we don't have to manually keep the maps in sync. Bug: 30215380,70633239 Test: Existing unit tests PiperOrigin-RevId: 179871748 Change-Id: Idd4cc1155068bb31c17deae80b98d73363fad770
Diffstat (limited to 'java/com/android/dialer/smartdial')
-rw-r--r--java/com/android/dialer/smartdial/map/BulgarianSmartDialMap.java46
-rw-r--r--java/com/android/dialer/smartdial/map/LatinSmartDialMap.java41
-rw-r--r--java/com/android/dialer/smartdial/map/RussianSmartDialMap.java49
-rw-r--r--java/com/android/dialer/smartdial/map/UkrainianSmartDialMap.java49
4 files changed, 8 insertions, 177 deletions
diff --git a/java/com/android/dialer/smartdial/map/BulgarianSmartDialMap.java b/java/com/android/dialer/smartdial/map/BulgarianSmartDialMap.java
index cbe6afa97..5be9761a1 100644
--- a/java/com/android/dialer/smartdial/map/BulgarianSmartDialMap.java
+++ b/java/com/android/dialer/smartdial/map/BulgarianSmartDialMap.java
@@ -17,54 +17,12 @@
package com.android.dialer.smartdial.map;
import android.support.v4.util.SimpleArrayMap;
+import com.android.dialer.dialpadview.DialpadCharMappings;
import com.google.common.base.Optional;
/** A {@link SmartDialMap} for the Bulgarian alphabet. */
@SuppressWarnings("Guava")
final class BulgarianSmartDialMap extends SmartDialMap {
- private static final SimpleArrayMap<Character, Character> CHAR_TO_KEY_MAP =
- new SimpleArrayMap<>();
-
- // Reference: https://en.wikipedia.org/wiki/Bulgarian_alphabet
- static {
- CHAR_TO_KEY_MAP.put('а', '2');
- CHAR_TO_KEY_MAP.put('б', '2');
- CHAR_TO_KEY_MAP.put('в', '2');
- CHAR_TO_KEY_MAP.put('г', '2');
-
- CHAR_TO_KEY_MAP.put('д', '3');
- CHAR_TO_KEY_MAP.put('е', '3');
- CHAR_TO_KEY_MAP.put('ж', '3');
- CHAR_TO_KEY_MAP.put('з', '3');
-
- CHAR_TO_KEY_MAP.put('и', '4');
- CHAR_TO_KEY_MAP.put('й', '4');
- CHAR_TO_KEY_MAP.put('к', '4');
- CHAR_TO_KEY_MAP.put('л', '4');
-
- CHAR_TO_KEY_MAP.put('м', '5');
- CHAR_TO_KEY_MAP.put('н', '5');
- CHAR_TO_KEY_MAP.put('о', '5');
-
- CHAR_TO_KEY_MAP.put('п', '6');
- CHAR_TO_KEY_MAP.put('р', '6');
- CHAR_TO_KEY_MAP.put('с', '6');
-
- CHAR_TO_KEY_MAP.put('т', '7');
- CHAR_TO_KEY_MAP.put('у', '7');
- CHAR_TO_KEY_MAP.put('ф', '7');
- CHAR_TO_KEY_MAP.put('х', '7');
-
- CHAR_TO_KEY_MAP.put('ц', '8');
- CHAR_TO_KEY_MAP.put('ч', '8');
- CHAR_TO_KEY_MAP.put('ш', '8');
- CHAR_TO_KEY_MAP.put('щ', '8');
-
- CHAR_TO_KEY_MAP.put('ъ', '9');
- CHAR_TO_KEY_MAP.put('ь', '9');
- CHAR_TO_KEY_MAP.put('ю', '9');
- CHAR_TO_KEY_MAP.put('я', '9');
- }
private static BulgarianSmartDialMap instance;
@@ -86,6 +44,6 @@ final class BulgarianSmartDialMap extends SmartDialMap {
@Override
SimpleArrayMap<Character, Character> getCharToKeyMap() {
- return CHAR_TO_KEY_MAP;
+ return DialpadCharMappings.getCharToKeyMap("bul");
}
}
diff --git a/java/com/android/dialer/smartdial/map/LatinSmartDialMap.java b/java/com/android/dialer/smartdial/map/LatinSmartDialMap.java
index 052af05c0..b8ef951c5 100644
--- a/java/com/android/dialer/smartdial/map/LatinSmartDialMap.java
+++ b/java/com/android/dialer/smartdial/map/LatinSmartDialMap.java
@@ -17,49 +17,12 @@
package com.android.dialer.smartdial.map;
import android.support.v4.util.SimpleArrayMap;
+import com.android.dialer.dialpadview.DialpadCharMappings;
import com.google.common.base.Optional;
/** A {@link SmartDialMap} for the Latin alphabet, which is for T9 dialpad searching. */
@SuppressWarnings("Guava")
final class LatinSmartDialMap extends SmartDialMap {
- private static final SimpleArrayMap<Character, Character> CHAR_TO_KEY_MAP =
- new SimpleArrayMap<>();
-
- static {
- CHAR_TO_KEY_MAP.put('a', '2');
- CHAR_TO_KEY_MAP.put('b', '2');
- CHAR_TO_KEY_MAP.put('c', '2');
-
- CHAR_TO_KEY_MAP.put('d', '3');
- CHAR_TO_KEY_MAP.put('e', '3');
- CHAR_TO_KEY_MAP.put('f', '3');
-
- CHAR_TO_KEY_MAP.put('g', '4');
- CHAR_TO_KEY_MAP.put('h', '4');
- CHAR_TO_KEY_MAP.put('i', '4');
-
- CHAR_TO_KEY_MAP.put('j', '5');
- CHAR_TO_KEY_MAP.put('k', '5');
- CHAR_TO_KEY_MAP.put('l', '5');
-
- CHAR_TO_KEY_MAP.put('m', '6');
- CHAR_TO_KEY_MAP.put('n', '6');
- CHAR_TO_KEY_MAP.put('o', '6');
-
- CHAR_TO_KEY_MAP.put('p', '7');
- CHAR_TO_KEY_MAP.put('q', '7');
- CHAR_TO_KEY_MAP.put('r', '7');
- CHAR_TO_KEY_MAP.put('s', '7');
-
- CHAR_TO_KEY_MAP.put('t', '8');
- CHAR_TO_KEY_MAP.put('u', '8');
- CHAR_TO_KEY_MAP.put('v', '8');
-
- CHAR_TO_KEY_MAP.put('w', '9');
- CHAR_TO_KEY_MAP.put('x', '9');
- CHAR_TO_KEY_MAP.put('y', '9');
- CHAR_TO_KEY_MAP.put('z', '9');
- }
private static LatinSmartDialMap instance;
@@ -780,6 +743,6 @@ final class LatinSmartDialMap extends SmartDialMap {
@Override
SimpleArrayMap<Character, Character> getCharToKeyMap() {
- return CHAR_TO_KEY_MAP;
+ return DialpadCharMappings.getDefaultCharToKeyMap();
}
}
diff --git a/java/com/android/dialer/smartdial/map/RussianSmartDialMap.java b/java/com/android/dialer/smartdial/map/RussianSmartDialMap.java
index 5038520c2..c10bbb0ce 100644
--- a/java/com/android/dialer/smartdial/map/RussianSmartDialMap.java
+++ b/java/com/android/dialer/smartdial/map/RussianSmartDialMap.java
@@ -17,57 +17,12 @@
package com.android.dialer.smartdial.map;
import android.support.v4.util.SimpleArrayMap;
+import com.android.dialer.dialpadview.DialpadCharMappings;
import com.google.common.base.Optional;
/** A {@link SmartDialMap} for the Russian alphabet. */
@SuppressWarnings("Guava")
final class RussianSmartDialMap extends SmartDialMap {
- private static final SimpleArrayMap<Character, Character> CHAR_TO_KEY_MAP =
- new SimpleArrayMap<>();
-
- // Reference: https://en.wikipedia.org/wiki/Russian_alphabet
- static {
- CHAR_TO_KEY_MAP.put('а', '2');
- CHAR_TO_KEY_MAP.put('б', '2');
- CHAR_TO_KEY_MAP.put('в', '2');
- CHAR_TO_KEY_MAP.put('г', '2');
-
- CHAR_TO_KEY_MAP.put('д', '3');
- CHAR_TO_KEY_MAP.put('е', '3');
- CHAR_TO_KEY_MAP.put('ё', '3');
- CHAR_TO_KEY_MAP.put('ж', '3');
- CHAR_TO_KEY_MAP.put('з', '3');
-
- CHAR_TO_KEY_MAP.put('и', '4');
- CHAR_TO_KEY_MAP.put('й', '4');
- CHAR_TO_KEY_MAP.put('к', '4');
- CHAR_TO_KEY_MAP.put('л', '4');
-
- CHAR_TO_KEY_MAP.put('м', '5');
- CHAR_TO_KEY_MAP.put('н', '5');
- CHAR_TO_KEY_MAP.put('о', '5');
- CHAR_TO_KEY_MAP.put('п', '5');
-
- CHAR_TO_KEY_MAP.put('р', '6');
- CHAR_TO_KEY_MAP.put('с', '6');
- CHAR_TO_KEY_MAP.put('т', '6');
- CHAR_TO_KEY_MAP.put('у', '6');
-
- CHAR_TO_KEY_MAP.put('ф', '7');
- CHAR_TO_KEY_MAP.put('х', '7');
- CHAR_TO_KEY_MAP.put('ц', '7');
- CHAR_TO_KEY_MAP.put('ч', '7');
-
- CHAR_TO_KEY_MAP.put('ш', '8');
- CHAR_TO_KEY_MAP.put('щ', '8');
- CHAR_TO_KEY_MAP.put('ъ', '8');
- CHAR_TO_KEY_MAP.put('ы', '8');
-
- CHAR_TO_KEY_MAP.put('ь', '9');
- CHAR_TO_KEY_MAP.put('э', '9');
- CHAR_TO_KEY_MAP.put('ю', '9');
- CHAR_TO_KEY_MAP.put('я', '9');
- }
private static RussianSmartDialMap instance;
@@ -89,6 +44,6 @@ final class RussianSmartDialMap extends SmartDialMap {
@Override
SimpleArrayMap<Character, Character> getCharToKeyMap() {
- return CHAR_TO_KEY_MAP;
+ return DialpadCharMappings.getCharToKeyMap("rus");
}
}
diff --git a/java/com/android/dialer/smartdial/map/UkrainianSmartDialMap.java b/java/com/android/dialer/smartdial/map/UkrainianSmartDialMap.java
index 28dbc0d61..844732c32 100644
--- a/java/com/android/dialer/smartdial/map/UkrainianSmartDialMap.java
+++ b/java/com/android/dialer/smartdial/map/UkrainianSmartDialMap.java
@@ -17,56 +17,11 @@
package com.android.dialer.smartdial.map;
import android.support.v4.util.SimpleArrayMap;
+import com.android.dialer.dialpadview.DialpadCharMappings;
import com.google.common.base.Optional;
/** A {@link SmartDialMap} for the Ukrainian alphabet. */
final class UkrainianSmartDialMap extends SmartDialMap {
- private static final SimpleArrayMap<Character, Character> CHAR_TO_KEY_MAP =
- new SimpleArrayMap<>();
-
- // Reference: https://en.wikipedia.org/wiki/Ukrainian_alphabet
- static {
- CHAR_TO_KEY_MAP.put('а', '2');
- CHAR_TO_KEY_MAP.put('б', '2');
- CHAR_TO_KEY_MAP.put('в', '2');
- CHAR_TO_KEY_MAP.put('г', '2');
- CHAR_TO_KEY_MAP.put('ґ', '2');
-
- CHAR_TO_KEY_MAP.put('д', '3');
- CHAR_TO_KEY_MAP.put('е', '3');
- CHAR_TO_KEY_MAP.put('є', '3');
- CHAR_TO_KEY_MAP.put('ж', '3');
- CHAR_TO_KEY_MAP.put('з', '3');
-
- CHAR_TO_KEY_MAP.put('и', '4');
- CHAR_TO_KEY_MAP.put('і', '4');
- CHAR_TO_KEY_MAP.put('ї', '4');
- CHAR_TO_KEY_MAP.put('й', '4');
- CHAR_TO_KEY_MAP.put('к', '4');
- CHAR_TO_KEY_MAP.put('л', '4');
-
- CHAR_TO_KEY_MAP.put('м', '5');
- CHAR_TO_KEY_MAP.put('н', '5');
- CHAR_TO_KEY_MAP.put('о', '5');
- CHAR_TO_KEY_MAP.put('п', '5');
-
- CHAR_TO_KEY_MAP.put('р', '6');
- CHAR_TO_KEY_MAP.put('с', '6');
- CHAR_TO_KEY_MAP.put('т', '6');
- CHAR_TO_KEY_MAP.put('у', '6');
-
- CHAR_TO_KEY_MAP.put('ф', '7');
- CHAR_TO_KEY_MAP.put('х', '7');
- CHAR_TO_KEY_MAP.put('ц', '7');
- CHAR_TO_KEY_MAP.put('ч', '7');
-
- CHAR_TO_KEY_MAP.put('ш', '8');
- CHAR_TO_KEY_MAP.put('щ', '8');
-
- CHAR_TO_KEY_MAP.put('ь', '9');
- CHAR_TO_KEY_MAP.put('ю', '9');
- CHAR_TO_KEY_MAP.put('я', '9');
- }
private static UkrainianSmartDialMap instance;
@@ -88,6 +43,6 @@ final class UkrainianSmartDialMap extends SmartDialMap {
@Override
SimpleArrayMap<Character, Character> getCharToKeyMap() {
- return CHAR_TO_KEY_MAP;
+ return DialpadCharMappings.getCharToKeyMap("ukr");
}
}