14e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka/* 24e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * Copyright (C) 2014 The Android Open Source Project 34e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * 44e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * Licensed under the Apache License, Version 2.0 (the "License"); 54e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * you may not use this file except in compliance with the License. 64e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * You may obtain a copy of the License at 74e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * 84e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * http://www.apache.org/licenses/LICENSE-2.0 94e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * 104e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * Unless required by applicable law or agreed to in writing, software 114e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * distributed under the License is distributed on an "AS IS" BASIS, 124e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 134e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * See the License for the specific language governing permissions and 144e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka * limitations under the License. 154e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka */ 164e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka 174e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaokapackage com.android.inputmethod.keyboard.layout; 184e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka 196959a0f214fc18e314f54213877956d95a1631e8Tadashi G. Takaokaimport com.android.inputmethod.keyboard.layout.customizer.LayoutCustomizer; 204e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaokaimport com.android.inputmethod.keyboard.layout.expected.ExpectedKey; 214e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaokaimport com.android.inputmethod.keyboard.layout.expected.ExpectedKeyboardBuilder; 224e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka 234e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaokapublic final class SouthSlavic extends LayoutBase { 244e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka private static final String LAYOUT_NAME = "south_slavic"; 254e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka 264e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka public SouthSlavic(final LayoutCustomizer customizer) { 274e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka super(customizer, Symbols.class, SymbolsShifted.class); 284e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka } 294e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka 304e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka @Override 314e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka public String getName() { return LAYOUT_NAME; } 324e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka 334e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka @Override 344e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka ExpectedKey[][] getCommonAlphabetLayout(final boolean isPhone) { return ALPHABET_COMMON; } 354e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka 364e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka public static final String ROW1_6 = "ROW1_6"; 374e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka public static final String ROW2_11 = "ROW2_11"; 384e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka public static final String ROW3_1 = "ROW3_1"; 394e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka public static final String ROW3_8 = "ROW3_8"; 404e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka 414e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka private static final ExpectedKey[][] ALPHABET_COMMON = new ExpectedKeyboardBuilder() 424e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka .setKeysOfRow(1, 434e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka // U+0459: "љ" CYRILLIC SMALL LETTER LJE 440dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka key("\u0459", additionalMoreKey("1")), 454e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka // U+045A: "њ" CYRILLIC SMALL LETTER NJE 460dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka key("\u045A", additionalMoreKey("2")), 474e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka // U+0435: "е" CYRILLIC SMALL LETTER IE 480dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka key("\u0435", additionalMoreKey("3")), 494e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka // U+0440: "р" CYRILLIC SMALL LETTER ER 500dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka key("\u0440", additionalMoreKey("4")), 514e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka // U+0442: "т" CYRILLIC SMALL LETTER TE 520dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka key("\u0442", additionalMoreKey("5")), 530dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka key(ROW1_6, additionalMoreKey("6")), 544e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka // U+0443: "у" CYRILLIC SMALL LETTER U 550dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka key("\u0443", additionalMoreKey("7")), 564e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka // U+0438: "и" CYRILLIC SMALL LETTER I 570dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka key("\u0438", additionalMoreKey("8")), 584e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka // U+043E: "о" CYRILLIC SMALL LETTER O 590dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka key("\u043E", additionalMoreKey("9")), 604e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka // U+043F: "п" CYRILLIC SMALL LETTER PE 610dabae720a83f9099667dea4de002007fdf35d60Tadashi G. Takaoka key("\u043F", additionalMoreKey("0")), 624e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka // U+0448: "ш" CYRILLIC SMALL LETTER SHA 636d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka "\u0448") 646d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka .setKeysOfRow(2, 656d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+0430: "а" CYRILLIC SMALL LETTER A 666d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+0441: "с" CYRILLIC SMALL LETTER ES 676d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+0434: "д" CYRILLIC SMALL LETTER DE 686d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+0444: "ф" CYRILLIC SMALL LETTER EF 696d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+0433: "г" CYRILLIC SMALL LETTER GHE 706d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+0445: "х" CYRILLIC SMALL LETTER HA 716d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+0458: "ј" CYRILLIC SMALL LETTER JE 726d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+043A: "к" CYRILLIC SMALL LETTER KA 736d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+043B: "л" CYRILLIC SMALL LETTER EL 746d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+0447: "ч" CYRILLIC SMALL LETTER CHE 754e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka "\u0430", "\u0441", "\u0434", "\u0444", "\u0433", "\u0445", "\u0458", "\u043A", 764e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka "\u043B", "\u0447", ROW2_11) 776d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka .setKeysOfRow(3, 786d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+045F: "џ" CYRILLIC SMALL LETTER DZHE 796d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+0446: "ц" CYRILLIC SMALL LETTER TSE 806d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+0432: "в" CYRILLIC SMALL LETTER VE 816d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+0431: "б" CYRILLIC SMALL LETTER BE 826d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+043D: "н" CYRILLIC SMALL LETTER EN 836d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+043C: "м" CYRILLIC SMALL LETTER EM 846d44cb512239a11572ec18b850d609bacc3267beTadashi G. Takaoka // U+0436: "ж" CYRILLIC SMALL LETTER ZHE 854e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka ROW3_1, "\u045F", "\u0446", "\u0432", "\u0431", "\u043D", "\u043C", ROW3_8, 864e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka "\u0436") 874e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka .build(); 884e3fa638918cd459d45d4bbd310a1c87f620f695Tadashi G. Takaoka} 89