Skip to content
Snippets Groups Projects
Commit ac5e6ddd authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka
Browse files

Add Italian (Switzerland) it_CH layout

Bug: 13920900
Change-Id: I57df8ca12b0d8cc4bbca2372c0470dcae5b5cbfb
parent a4ac1855
No related branches found
No related tags found
No related merge requests found
......@@ -57,6 +57,7 @@
in: Indonesian/qwerty # "id" is the official language code of Indonesian.
is: Icelandic/qwerty
it: Italian/qwerty
it_CH: Italian (Switzerland)/swiss
iw: Hebrew/hebrew # "he" is the official language code of Hebrew.
ka_GE: Georgian (Georgia)/georgian
kk: Kazakh/east_slavic
......@@ -385,6 +386,14 @@
android:imeSubtypeExtraValue="AsciiCapable,SupportTouchPositionCorrection,EmojiCapable"
android:isAsciiCapable="true"
/>
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic"
android:subtypeId="0xd914fe1a"
android:imeSubtypeLocale="it_CH"
android:imeSubtypeMode="keyboard"
android:imeSubtypeExtraValue="KeyboardLayoutSet=swiss,AsciiCapable,EmojiCapable"
android:isAsciiCapable="true"
/>
<!-- Java uses the deprecated "iw" code instead of the standard "he" code for Hebrew. -->
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic"
......
......@@ -25,8 +25,8 @@ import java.util.ArrayList;
@SmallTest
public class KeyboardLayoutSetSubtypesCountTests extends KeyboardLayoutSetTestsBase {
private static final int NUMBER_OF_SUBTYPES = 69;
private static final int NUMBER_OF_ASCII_CAPABLE_SUBTYPES = 44;
private static final int NUMBER_OF_SUBTYPES = 70;
private static final int NUMBER_OF_ASCII_CAPABLE_SUBTYPES = 45;
private static final int NUMBER_OF_PREDEFINED_ADDITIONAL_SUBTYPES = 2;
private static String toString(final ArrayList<InputMethodSubtype> subtypeList) {
......
......@@ -20,6 +20,7 @@ import android.test.suitebuilder.annotation.SmallTest;
import com.android.inputmethod.keyboard.layout.LayoutBase;
import com.android.inputmethod.keyboard.layout.LayoutBase.EuroCustomizer;
import com.android.inputmethod.keyboard.layout.LayoutBase.LayoutCustomizer;
import com.android.inputmethod.keyboard.layout.Qwerty;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKeyboardBuilder;
......@@ -31,12 +32,26 @@ import java.util.Locale;
@SmallTest
public final class TestsItalian extends LayoutTestsBase {
private static final Locale LOCALE = new Locale("it");
private static final LayoutBase LAYOUT = new Qwerty(new ItalianCustomizer(LOCALE));
private static final LayoutBase LAYOUT = new Qwerty(new ItalianITCustomizer(LOCALE));
@Override
LayoutBase getLayout() { return LAYOUT; }
private static class ItalianCustomizer extends EuroCustomizer {
private static class ItalianITCustomizer extends EuroCustomizer {
private final ItalianCustomizer mItalianCustomizer;
public ItalianITCustomizer(final Locale locale) {
super(locale);
mItalianCustomizer = new ItalianCustomizer(locale);
}
@Override
public ExpectedKeyboardBuilder setAccentedLetters(final ExpectedKeyboardBuilder builder) {
return mItalianCustomizer.setAccentedLetters(builder);
}
}
static class ItalianCustomizer extends LayoutCustomizer {
public ItalianCustomizer(final Locale locale) { super(locale); }
@Override
......
/*
* 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.Swiss;
import com.android.inputmethod.keyboard.layout.expected.ExpectedKeyboardBuilder;
import com.android.inputmethod.keyboard.layout.tests.TestsItalian.ItalianCustomizer;
import java.util.Locale;
/**
* it_CH: Italian (Switzerland)/swiss
*/
@SmallTest
public final class TestsItalianCH extends LayoutTestsBase {
private static final Locale LOCALE = new Locale("it", "CH");
private static final LayoutBase LAYOUT = new Swiss(new ItalianCHCustomizer(LOCALE));
@Override
LayoutBase getLayout() { return LAYOUT; }
private static class ItalianCHCustomizer extends ItalianCustomizer {
public ItalianCHCustomizer(final Locale locale) { super(locale); }
@Override
public ExpectedKeyboardBuilder setAccentedLetters(final ExpectedKeyboardBuilder builder) {
super.setAccentedLetters(builder);
return builder
// U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
// U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE
.replaceKeyOfLabel(Swiss.ROW1_11, key("\u00FC", moreKey("\u00E8")))
// U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS
// U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE
.replaceKeyOfLabel(Swiss.ROW2_10, key("\u00F6", moreKey("\u00E9")))
// U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS
// U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE
.replaceKeyOfLabel(Swiss.ROW2_11, key("\u00E4", moreKey("\u00E0")));
}
}
}
......@@ -59,4 +59,16 @@
U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS
U+016B: "ū" LATIN SMALL LETTER U WITH MACRON -->
<string name="morekeys_u">&#x00F9;,&#x00FA;,&#x00FB;,&#x00FC;,&#x016B;</string>
<!-- U+00FC: "ü" LATIN SMALL LETTER U WITH DIAERESIS -->
<string name="keyspec_swiss_row1_11">&#x00FC;</string>
<!-- U+00E8: "è" LATIN SMALL LETTER E WITH GRAVE -->
<string name="morekeys_swiss_row1_11">&#x00E8;</string>
<!-- U+00F6: "ö" LATIN SMALL LETTER O WITH DIAERESIS -->
<string name="keyspec_swiss_row2_10">&#x00F6;</string>
<!-- U+00E9: "é" LATIN SMALL LETTER E WITH ACUTE -->
<string name="morekeys_swiss_row2_10">&#x00E9;</string>
<!-- U+00E4: "ä" LATIN SMALL LETTER A WITH DIAERESIS -->
<string name="keyspec_swiss_row2_11">&#x00E4;</string>
<!-- U+00E0: "à" LATIN SMALL LETTER A WITH GRAVE -->
<string name="morekeys_swiss_row2_11">&#x00E0;</string>
</resources>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment