diff options
author | 2014-10-03 10:51:02 +0900 | |
---|---|---|
committer | 2014-10-03 09:48:18 +0000 | |
commit | 826186f66b43792b978d869069602686b81f53ab (patch) | |
tree | 60c8d20bb663684a8fa6d865c26fb04da56be59e /tests | |
parent | 3d7681d8e5c73f438180561007360b08be4bc31a (diff) | |
download | latinime-826186f66b43792b978d869069602686b81f53ab.tar.gz latinime-826186f66b43792b978d869069602686b81f53ab.tar.xz latinime-826186f66b43792b978d869069602686b81f53ab.zip |
Use Devanagari Danda letter as full stop on Nepali keyboard
Bug: 17741882
Change-Id: I62e8c9a3f194b9a3a6724c7d1a92292b150ddeb9
Diffstat (limited to 'tests')
3 files changed, 53 insertions, 88 deletions
diff --git a/tests/src/com/android/inputmethod/keyboard/layout/NepaliRomanized.java b/tests/src/com/android/inputmethod/keyboard/layout/NepaliRomanized.java index 640b63dd6..299cb61b2 100644 --- a/tests/src/com/android/inputmethod/keyboard/layout/NepaliRomanized.java +++ b/tests/src/com/android/inputmethod/keyboard/layout/NepaliRomanized.java @@ -33,26 +33,17 @@ public final class NepaliRomanized extends LayoutBase { private static final String LAYOUT_NAME = "nepali_romanized"; public NepaliRomanized(final Locale locale) { - super(new NepaliRomanizedCustomizer(locale), HindiSymbols.class, SymbolsShifted.class); + super(new NepaliCustomizer(locale), HindiSymbols.class, SymbolsShifted.class); } @Override public String getName() { return LAYOUT_NAME; } - private static class NepaliRomanizedCustomizer extends NepaliCustomizer { - NepaliRomanizedCustomizer(final Locale locale) { super(locale); } - - @Override - public ExpectedKey[] getRightShiftKeys(final boolean isPhone) { - return isPhone ? EMPTY_KEYS : EXCLAMATION_AND_QUESTION_MARKS; - } - } - @Override - ExpectedKey[][] getCommonAlphabetLayout(boolean isPhone) { return ALPHABET_COMMON; } + ExpectedKey[][] getCommonAlphabetLayout(final boolean isPhone) { return ALPHABET_COMMON; } @Override - ExpectedKey[][] getCommonAlphabetShiftLayout(boolean isPhone, final int elementId) { + ExpectedKey[][] getCommonAlphabetShiftLayout(final boolean isPhone, final int elementId) { if (elementId == KeyboardId.ELEMENT_ALPHABET_AUTOMATIC_SHIFTED) { return getCommonAlphabetLayout(isPhone); } @@ -118,11 +109,9 @@ public final class NepaliRomanized extends LayoutBase { // U+0928: "न" DEVANAGARI LETTER NA // U+092E: "म" DEVANAGARI LETTER MA "\u0937", "\u0921", "\u091A", "\u0935", "\u092C", "\u0928", "\u092E", - // U+0964: "।" DEVANAGARI DANDA - // U+093D: "ऽ" DEVANAGARI SIGN AVAGRAHA - key("\u0964", moreKey("\u093D")), // U+094D: "्" DEVANAGARI SIGN VIRAMA - key(SIGN_VIRAMA, "\u094D")) + // U+093D: "ऽ" DEVANAGARI SIGN AVAGRAHA + key(SIGN_VIRAMA, "\u094D", moreKey("\u093D"))) .build(); private static final ExpectedKey[][] ALPHABET_SHIFTED_COMMON = new ExpectedKeyboardBuilder() @@ -172,8 +161,6 @@ public final class NepaliRomanized extends LayoutBase { // U+0902: "ं" DEVANAGARI SIGN ANUSVARA key(SIGN_ANUSVARA, "\u0902"), // U+0919: "ङ" DEVANAGARI LETTER NGA - "\u0919", - // U+094D: "्" DEVANAGARI SIGN VIRAMA - key(SIGN_VIRAMA, "\u094D")) + "\u0919") .build(); } diff --git a/tests/src/com/android/inputmethod/keyboard/layout/NepaliTraditional.java b/tests/src/com/android/inputmethod/keyboard/layout/NepaliTraditional.java index 17e226f77..0a2bea342 100644 --- a/tests/src/com/android/inputmethod/keyboard/layout/NepaliTraditional.java +++ b/tests/src/com/android/inputmethod/keyboard/layout/NepaliTraditional.java @@ -43,82 +43,20 @@ public final class NepaliTraditional extends LayoutBase { NepaliTraditionalCustomizer(final Locale locale) { super(locale); } @Override - public ExpectedKey[] getRightShiftKeys(final boolean isPhone) { return EMPTY_KEYS; } - - @Override - public ExpectedKey[] getKeysRightToSpacebar(final boolean isPhone) { - if (isPhone) { - // U+094D: "्" DEVANAGARI SIGN VIRAMA - return joinKeys(key(SIGN_VIRAMA, "\u094D", PHONE_PUNCTUATION_MORE_KEYS)); - } - return super.getKeysRightToSpacebar(isPhone); + public ExpectedKey[] getRightShiftKeys(final boolean isPhone) { + return isPhone ? EMPTY_KEYS : EXCLAMATION_AND_QUESTION_MARKS; } } @Override - ExpectedKey[][] getCommonAlphabetLayout(boolean isPhone) { - final ExpectedKeyboardBuilder builder = new ExpectedKeyboardBuilder(ALPHABET_COMMON); - if (isPhone) { - builder.addKeysOnTheRightOfRow(3, - // U+0947: "े" DEVANAGARI VOWEL SIGN E - // U+0903: "ः" DEVANAGARI SIGN VISARGA - // U+093D: "ऽ" DEVANAGARI SIGN AVAGRAHA - key(VOWEL_SIGN_E, "\u0947", joinMoreKeys( - moreKey(SIGN_VISARGA, "\u0903"), "\u093D")), - // U+0964: "।" DEVANAGARI DANDA - "\u0964", - // U+0930: "र" DEVANAGARI LETTER RA - // U+0930/U+0941: "रु" DEVANAGARI LETTER RA/DEVANAGARI VOWEL SIGN U - key("\u0930", moreKey("\u0930\u0941"))); - } else { - builder.addKeysOnTheRightOfRow(3, - // U+0903: "ः" DEVANAGARI SIGN VISARGA - // U+093D: "ऽ" DEVANAGARI SIGN AVAGRAHA - key(SIGN_VISARGA, "\u0903", moreKey("\u093D")), - // U+0947: "े" DEVANAGARI VOWEL SIGN E - key(VOWEL_SIGN_E, "\u0947"), - // U+0964: "।" DEVANAGARI DANDA - "\u0964", - // U+0930: "र" DEVANAGARI LETTER RA - key("\u0930", moreKey("!")), - // U+094D: "्" DEVANAGARI SIGN VIRAMA - key(SIGN_VIRAMA, "\u094D", moreKey("?"))); - } - return builder.build(); - } + ExpectedKey[][] getCommonAlphabetLayout(final boolean isPhone) { return ALPHABET_COMMON; } @Override - ExpectedKey[][] getCommonAlphabetShiftLayout(boolean isPhone, final int elementId) { + ExpectedKey[][] getCommonAlphabetShiftLayout(final boolean isPhone, final int elementId) { if (elementId == KeyboardId.ELEMENT_ALPHABET_AUTOMATIC_SHIFTED) { return getCommonAlphabetLayout(isPhone); } - final ExpectedKeyboardBuilder builder = new ExpectedKeyboardBuilder( - ALPHABET_SHIFTED_COMMON); - if (isPhone) { - builder.addKeysOnTheRightOfRow(3, - // U+0902: "ं" DEVANAGARI SIGN ANUSVARA - key(SIGN_ANUSVARA, "\u0902"), - // U+0919: "ङ" DEVANAGARI LETTER NGA - "\u0919", - // U+0948: "ै" DEVANAGARI VOWEL SIGN AI - // U+0936/U+094D/U+0930: - // "श्र" DEVANAGARI LETTER SHA/DEVANAGARI SIGN VIRAMA/DEVANAGARI LETTER RA - key(VOWEL_SIGN_AI, "\u0948", moreKey("\u0936\u094D\u0930"))); - } else { - builder.addKeysOnTheRightOfRow(3, - // U+0902: "ं" DEVANAGARI SIGN ANUSVARA - key(SIGN_ANUSVARA, "\u0902"), - // U+0919: "ङ" DEVANAGARI LETTER NGA - "\u0919", - // U+0948: "ै" DEVANAGARI VOWEL SIGN AI - // U+0936/U+094D/U+0930: - // "श्र" DEVANAGARI LETTER SHA/DEVANAGARI SIGN VIRAMA/DEVANAGARI LETTER RA - key(VOWEL_SIGN_AI, "\u0948", moreKey("\u0936\u094D\u0930")), - // U+0930/U+0941: "रु" DEVANAGARI LETTER RA/DEVANAGARI VOWEL SIGN U - key("\u0930\u0941", moreKey("!")), - "?"); - } - return builder.build(); + return ALPHABET_SHIFTED_COMMON; } private static final ExpectedKey[][] ALPHABET_COMMON = new ExpectedKeyboardBuilder() @@ -181,7 +119,17 @@ public final class NepaliTraditional extends LayoutBase { // U+0916: "ख" DEVANAGARI LETTER KHA // U+0926: "द" DEVANAGARI LETTER DA // U+0932: "ल" DEVANAGARI LETTER LA - "\u0936", "\u0939", "\u0905", "\u0916", "\u0926", "\u0932") + "\u0936", "\u0939", "\u0905", "\u0916", "\u0926", "\u0932", + // U+0947: "े" DEVANAGARI VOWEL SIGN E + // U+0903: "ः" DEVANAGARI SIGN VISARGA + // U+093D: "ऽ" DEVANAGARI SIGN AVAGRAHA + key(VOWEL_SIGN_E, "\u0947", joinMoreKeys( + moreKey(SIGN_VISARGA, "\u0903"), "\u093D")), + // U+094D: "्" DEVANAGARI SIGN VIRAMA + key(SIGN_VIRAMA, "\u094D"), + // U+0930: "र" DEVANAGARI LETTER RA + // U+0930/U+0941: "रु" DEVANAGARI LETTER RA/DEVANAGARI VOWEL SIGN U + key("\u0930", moreKey("\u0930\u0941"))) .build(); private static final ExpectedKey[][] ALPHABET_SHIFTED_COMMON = new ExpectedKeyboardBuilder() @@ -264,6 +212,14 @@ public final class NepaliTraditional extends LayoutBase { key(VOWEL_SIGN_AU, "\u094C"), // U+0926/U+094D/U+092F: // "द्य" DEVANAGARI LETTER DA/DEVANAGARI SIGN VIRAMA/DEVANAGARI LETTER YA - "\u0926\u094D\u092F") + "\u0926\u094D\u092F", + // U+0902: "ं" DEVANAGARI SIGN ANUSVARA + key(SIGN_ANUSVARA, "\u0902"), + // U+0919: "ङ" DEVANAGARI LETTER NGA + "\u0919", + // U+0948: "ै" DEVANAGARI VOWEL SIGN AI + // U+0936/U+094D/U+0930: + // "श्र" DEVANAGARI LETTER SHA/DEVANAGARI SIGN VIRAMA/DEVANAGARI LETTER RA + key(VOWEL_SIGN_AI, "\u0948", moreKey("\u0936\u094D\u0930"))) .build(); } diff --git a/tests/src/com/android/inputmethod/keyboard/layout/customizer/NepaliCustomizer.java b/tests/src/com/android/inputmethod/keyboard/layout/customizer/NepaliCustomizer.java index 7a00d80a0..264322f54 100644 --- a/tests/src/com/android/inputmethod/keyboard/layout/customizer/NepaliCustomizer.java +++ b/tests/src/com/android/inputmethod/keyboard/layout/customizer/NepaliCustomizer.java @@ -38,8 +38,30 @@ public class NepaliCustomizer extends DevanagariCustomizer { return joinKeys(LANGUAGE_SWITCH_KEY, SPACE_KEY, key(ZWNJ_KEY, ZWJ_KEY)); } + @Override + public ExpectedKey[] getKeysRightToSpacebar(final boolean isPhone) { + // U+0964: "।" DEVANAGARI DANDA + final ExpectedKey periodKey = key("\u0964", getPunctuationMoreKeys(isPhone)); + return joinKeys(periodKey); + } + + @Override + public ExpectedKey[] getPunctuationMoreKeys(final boolean isPhone) { + return isPhone ? NEPALI_PHONE_PUNCTUATION_MORE_KEYS + : NEPALI_TABLET_PUNCTUATION_MORE_KEYS; + } + // U+0930/U+0941/U+002E "रु." NEPALESE RUPEE SIGN private static final ExpectedKey CURRENCY_NEPALI = key("\u0930\u0941\u002E", Symbols.DOLLAR_SIGN, Symbols.CENT_SIGN, Symbols.EURO_SIGN, Symbols.POUND_SIGN, Symbols.YEN_SIGN, Symbols.PESO_SIGN); + + // Punctuation more keys for phone form factor. + private static final ExpectedKey[] NEPALI_PHONE_PUNCTUATION_MORE_KEYS = joinKeys( + ".", ",", "?", "!", "#", ")", "(", "/", ";", + "'", "@", ":", "-", "\"", "+", "%", "&"); + // Punctuation more keys for tablet form factor. + private static final ExpectedKey[] NEPALI_TABLET_PUNCTUATION_MORE_KEYS = joinKeys( + ".", ",", "'", "#", ")", "(", "/", ";", + "@", ":", "-", "\"", "+", "%", "&"); } |