Add en_IN subtype

Bug: 13914988
Change-Id: Ifd497a6a1d2686490e388e10e391475e97e9c166
main
Tadashi G. Takaoka 2014-04-08 15:34:41 +09:00
parent 27a4f2e5e1
commit daf75d275e
5 changed files with 94 additions and 4 deletions

View File

@ -129,6 +129,32 @@
latin:styleName="moreCurrency4KeyStyle"
latin:keySpec="¢" />
</case>
<!-- IN: India (Rupee) -->
<case
latin:countryCode="IN"
>
<!-- U+20B9: "₹" INDIAN RUPEE SIGN
U+00A3: "£" POUND SIGN
U+20AC: "€" EURO SIGN
U+00A2: "¢" CENT SIGN -->
<key-style
latin:styleName="currencyKeyStyle"
latin:keySpec="&#x20B9;"
latin:moreKeys="!text/morekeys_currency" />
<key-style
latin:styleName="moreCurrency1KeyStyle"
latin:keySpec="&#x00A3;" />
<key-style
latin:styleName="moreCurrency2KeyStyle"
latin:keySpec="&#x20AC;" />
<key-style
latin:styleName="moreCurrency3KeyStyle"
latin:keySpec="$"
latin:moreKeys="&#x00A2;" />
<key-style
latin:styleName="moreCurrency4KeyStyle"
latin:keySpec="&#x00A2;" />
</case>
<!-- GB: United Kingdom (Pound) -->
<case
latin:countryCode="GB"

View File

@ -34,6 +34,7 @@
de: German/qwertz
de_CH: German (Switzerland)/swiss
el: Greek/greek
en_IN: English (India)/qwerty
en_US: English (United States)/qwerty
en_GB: English (Great Britain)/qwerty
eo: Esperanto/spanish
@ -215,6 +216,14 @@
android:imeSubtypeExtraValue="KeyboardLayoutSet=greek,EmojiCapable"
android:isAsciiCapable="false"
/>
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic"
android:subtypeId="0x8d58fc2d"
android:imeSubtypeLocale="en_IN"
android:imeSubtypeMode="keyboard"
android:imeSubtypeExtraValue="KeyboardLayoutSet=qwerty,AsciiCapable,EmojiCapable"
android:isAsciiCapable="true"
/>
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic"
android:subtypeId="0x4090554a"

View File

@ -25,8 +25,8 @@ import java.util.ArrayList;
@SmallTest
public class KeyboardLayoutSetSubtypesCountTests extends KeyboardLayoutSetTestsBase {
private static final int NUMBER_OF_SUBTYPES = 67;
private static final int NUMBER_OF_ASCII_CAPABLE_SUBTYPES = 42;
private static final int NUMBER_OF_SUBTYPES = 68;
private static final int NUMBER_OF_ASCII_CAPABLE_SUBTYPES = 43;
private static final int NUMBER_OF_PREDEFINED_ADDITIONAL_SUBTYPES = 2;
private static String toString(final ArrayList<InputMethodSubtype> subtypeList) {

View File

@ -51,7 +51,7 @@ public final class Hindi extends LayoutBase {
public ExpectedKey getBackToSymbolsKey() { return HINDI_BACK_TO_SYMBOLS_KEY; }
@Override
public ExpectedKey getCurrencyKey() { return CURRENCY_HINDI; }
public ExpectedKey getCurrencyKey() { return CURRENCY_RUPEE; }
@Override
public ExpectedKey[] getOtherCurrencyKeys() {
@ -78,7 +78,7 @@ public final class Hindi extends LayoutBase {
Constants.CODE_SHIFT);
// U+20B9: "₹" INDIAN RUPEE SIGN
private static final ExpectedKey CURRENCY_HINDI = key("\u20B9",
private static final ExpectedKey CURRENCY_RUPEE = key("\u20B9",
Symbols.CURRENCY_GENERIC_MORE_KEYS);
}

View File

@ -0,0 +1,55 @@
/*
* Copyright (C) 2014 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.inputmethod.keyboard.layout.tests;
import android.test.suitebuilder.annotation.SmallTest;
import com.android.inputmethod.keyboard.layout.LayoutBase;
import com.android.inputmethod.keyboard.layout.Qwerty;
import com.android.inputmethod.keyboard.layout.Symbols;
import com.android.inputmethod.keyboard.layout.SymbolsShifted;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKey;
import java.util.Locale;
/*
* en_IN: English (India)/qwerty
*/
@SmallTest
public final class TestsEnglishIN extends TestsEnglishUS {
private static final Locale LOCALE = new Locale("en", "IN");
private static final LayoutBase LAYOUT = new Qwerty(new EnglishINCustomizer(LOCALE));
@Override
LayoutBase getLayout() { return LAYOUT; }
private static class EnglishINCustomizer extends EnglishCustomizer {
public EnglishINCustomizer(final Locale locale) { super(locale); }
@Override
public ExpectedKey getCurrencyKey() { return CURRENCY_RUPEE; }
@Override
public ExpectedKey[] getOtherCurrencyKeys() {
return SymbolsShifted.CURRENCIES_OTHER_GENERIC;
}
// U+20B9: "₹" INDIAN RUPEE SIGN
private static final ExpectedKey CURRENCY_RUPEE = key("\u20B9",
Symbols.CURRENCY_GENERIC_MORE_KEYS);
}
}