aboutsummaryrefslogtreecommitdiffstats
path: root/java/res
diff options
context:
space:
mode:
Diffstat (limited to 'java/res')
-rw-r--r--java/res/raw/main_es.dictbin1376678 -> 1376706 bytes
-rw-r--r--java/res/values/attrs.xml11
-rw-r--r--java/res/xml-sw600dp/rows_sinhala.xml57
-rw-r--r--java/res/xml/kbd_sinhala.xml26
-rw-r--r--java/res/xml/keyboard_layout_set_arabic.xml2
-rw-r--r--java/res/xml/keyboard_layout_set_sinhala.xml58
-rw-r--r--java/res/xml/method.xml17
-rw-r--r--java/res/xml/rowkeys_sinhala1.xml124
-rw-r--r--java/res/xml/rowkeys_sinhala2.xml98
-rw-r--r--java/res/xml/rowkeys_sinhala3.xml94
-rw-r--r--java/res/xml/rows_sinhala.xml52
11 files changed, 533 insertions, 6 deletions
diff --git a/java/res/raw/main_es.dict b/java/res/raw/main_es.dict
index 0911b70f1..3c99e7389 100644
--- a/java/res/raw/main_es.dict
+++ b/java/res/raw/main_es.dict
Binary files differ
diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml
index fcb919d0b..7dda0a652 100644
--- a/java/res/values/attrs.xml
+++ b/java/res/values/attrs.xml
@@ -488,6 +488,17 @@
<attr name="enableProximityCharsCorrection" format="boolean" />
</declare-styleable>
+ <declare-styleable name="KeyboardLayoutSet_Feature">
+ <!-- This should be aligned with ScriptUtils.SCRIPT_* -->
+ <attr name="supportedScript" format="enum">
+ <enum name="latin" value="0" />
+ <enum name="cyrillic" value="1" />
+ <enum name="greek" value="2" />
+ <enum name="arabic" value="3" />
+ <enum name="hebrew" value="4" />
+ </attr>
+ </declare-styleable>
+
<declare-styleable name="SeekBarDialogPreference">
<attr name="maxValue" format="integer" />
<attr name="minValue" format="integer" />
diff --git a/java/res/xml-sw600dp/rows_sinhala.xml b/java/res/xml-sw600dp/rows_sinhala.xml
new file mode 100644
index 000000000..23c3f3aab
--- /dev/null
+++ b/java/res/xml-sw600dp/rows_sinhala.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 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.
+*/
+-->
+
+<merge
+ xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
+>
+ <include
+ latin:keyboardLayout="@xml/key_styles_common" />
+ <Row
+ latin:keyWidth="8.182%p"
+ >
+ <include
+ latin:keyboardLayout="@xml/rowkeys_sinhala1" />
+ <Key
+ latin:keyStyle="deleteKeyStyle"
+ latin:keyWidth="fillRight" />
+ </Row>
+ <Row
+ latin:keyWidth="8.182%p"
+ >
+ <include
+ latin:keyboardLayout="@xml/rowkeys_sinhala2" />
+ <Key
+ latin:keyStyle="enterKeyStyle"
+ latin:keyWidth="fillRight" />
+ </Row>
+ <Row
+ latin:keyWidth="8.182%p"
+ >
+ <Key
+ latin:keyStyle="shiftKeyStyle"
+ latin:keyWidth="10.0%p" />
+ <include
+ latin:keyboardLayout="@xml/rowkeys_sinhala3" />
+ <include
+ latin:keyboardLayout="@xml/keys_exclamation_question" />
+ </Row>
+ <include
+ latin:keyboardLayout="@xml/row_qwerty4" />
+</merge>
diff --git a/java/res/xml/kbd_sinhala.xml b/java/res/xml/kbd_sinhala.xml
new file mode 100644
index 000000000..6c0f4bc05
--- /dev/null
+++ b/java/res/xml/kbd_sinhala.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 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.
+*/
+-->
+
+<Keyboard
+ xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
+>
+ <include
+ latin:keyboardLayout="@xml/rows_sinhala" />
+</Keyboard>
diff --git a/java/res/xml/keyboard_layout_set_arabic.xml b/java/res/xml/keyboard_layout_set_arabic.xml
index 10e95bd30..1bf8c6295 100644
--- a/java/res/xml/keyboard_layout_set_arabic.xml
+++ b/java/res/xml/keyboard_layout_set_arabic.xml
@@ -20,6 +20,8 @@
<KeyboardLayoutSet
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin">
+ <Feature
+ latin:supportedScript="arabic" />
<Element
latin:elementName="alphabet"
latin:elementKeyboard="@xml/kbd_arabic"
diff --git a/java/res/xml/keyboard_layout_set_sinhala.xml b/java/res/xml/keyboard_layout_set_sinhala.xml
new file mode 100644
index 000000000..8e6e619d2
--- /dev/null
+++ b/java/res/xml/keyboard_layout_set_sinhala.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 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.
+*/
+-->
+
+<KeyboardLayoutSet
+ xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin">
+ <Element
+ latin:elementName="alphabet"
+ latin:elementKeyboard="@xml/kbd_sinhala"
+ latin:enableProximityCharsCorrection="true" />
+ <Element
+ latin:elementName="alphabetAutomaticShifted"
+ latin:elementKeyboard="@xml/kbd_sinhala"
+ latin:enableProximityCharsCorrection="true" />
+ <!-- On these shifted alphabet layouts the proximity characters correction should be disabled
+ because the letters on these layouts aren't the ones in different case of the above
+ unshifted layouts. -->
+ <Element
+ latin:elementName="alphabetManualShifted"
+ latin:elementKeyboard="@xml/kbd_sinhala" />
+ <Element
+ latin:elementName="alphabetShiftLocked"
+ latin:elementKeyboard="@xml/kbd_sinhala" />
+ <Element
+ latin:elementName="alphabetShiftLockShifted"
+ latin:elementKeyboard="@xml/kbd_sinhala" />
+ <Element
+ latin:elementName="symbols"
+ latin:elementKeyboard="@xml/kbd_symbols" />
+ <Element
+ latin:elementName="symbolsShifted"
+ latin:elementKeyboard="@xml/kbd_symbols_shift" />
+ <Element
+ latin:elementName="phone"
+ latin:elementKeyboard="@xml/kbd_phone" />
+ <Element
+ latin:elementName="phoneSymbols"
+ latin:elementKeyboard="@xml/kbd_phone_symbols" />
+ <Element
+ latin:elementName="number"
+ latin:elementKeyboard="@xml/kbd_number" />
+</KeyboardLayoutSet>
diff --git a/java/res/xml/method.xml b/java/res/xml/method.xml
index 777a13d42..68dce8abc 100644
--- a/java/res/xml/method.xml
+++ b/java/res/xml/method.xml
@@ -81,6 +81,7 @@
pt_PT: Portuguese (Portugal)/qwerty
ro: Romanian/qwerty
ru: Russian/east_slavic
+ (si_LK: Sinhala (Sri Lanka)/sinhala) # This is a preliminary keyboard layout.
sk: Slovak/qwerty
sl: Slovenian/qwerty
sr: Serbian/south_slavic
@@ -332,7 +333,6 @@
/>
<!-- TODO: This hindi_compact keyboard is a preliminary layout.
This isn't based on the final specification. -->
- <!--
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic_compact"
android:subtypeId="0xe49c89a1"
@@ -341,7 +341,6 @@
android:imeSubtypeExtraValue="KeyboardLayoutSet=hindi_compact,EmojiCapable"
android:isAsciiCapable="false"
/>
- -->
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic"
android:subtypeId="0x35b7526a"
@@ -482,7 +481,6 @@
/>
<!-- TODO: This marathi keyboard is a preliminary layout.
This isn't based on the final specification. -->
- <!--
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic"
android:subtypeId="0x747b9f03"
@@ -491,7 +489,6 @@
android:imeSubtypeExtraValue="KeyboardLayoutSet=marathi,EmojiCapable"
android:isAsciiCapable="false"
/>
- -->
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic"
android:subtypeId="0x84c87c61"
@@ -502,7 +499,6 @@
/>
<!-- TODO: This Myanmar keyboard is a preliminary layout.
This isn't based on the final specification. -->
- <!--
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic"
android:subtypeId="0xea266ea4"
@@ -511,7 +507,6 @@
android:imeSubtypeExtraValue="KeyboardLayoutSet=myanmar,EmojiCapable,CombiningRules=MyanmarReordering"
android:isAsciiCapable="false"
/>
- -->
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic"
android:subtypeId="0x3f12ee14"
@@ -592,6 +587,16 @@
android:imeSubtypeExtraValue="SupportTouchPositionCorrection,EmojiCapable"
android:isAsciiCapable="false"
/>
+ <!-- TODO: This sinhala keyboard is a preliminary layout.
+ This isn't based on the final specification. -->
+ <subtype android:icon="@drawable/ic_ime_switcher_dark"
+ android:label="@string/subtype_generic"
+ android:subtypeId="0x5c6b3bde"
+ android:imeSubtypeLocale="si_LK"
+ android:imeSubtypeMode="keyboard"
+ android:imeSubtypeExtraValue="KeyboardLayoutSet=sinhala,EmojiCapable"
+ android:isAsciiCapable="false"
+ />
<subtype android:icon="@drawable/ic_ime_switcher_dark"
android:label="@string/subtype_generic"
android:subtypeId="0x8e94d413"
diff --git a/java/res/xml/rowkeys_sinhala1.xml b/java/res/xml/rowkeys_sinhala1.xml
new file mode 100644
index 000000000..f258ae29e
--- /dev/null
+++ b/java/res/xml/rowkeys_sinhala1.xml
@@ -0,0 +1,124 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 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.
+*/
+-->
+
+<merge
+ xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
+>
+ <switch>
+ <case
+ latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLocked|alphabetShiftLockShifted"
+ >
+ <!-- U+0DD6: "ූ" SINHALA VOWEL SIGN DIGA PAA-PILLA -->
+ <Key
+ latin:keySpec="&#x0DD6;"
+ latin:additionalMoreKeys="1" />
+ <!-- U+0D8B: "උ" SINHALA LETTER UYANNA -->
+ <Key
+ latin:keySpec="&#x0D8B;"
+ latin:additionalMoreKeys="2" />
+ <!-- U+0DD1: "ෑ" SINHALA VOWEL SIGN DIGA AEDA-PILLA -->
+ <Key
+ latin:keySpec="&#x0DD1;"
+ latin:additionalMoreKeys="3" />
+ <!-- U+0D8D: "ඍ" SINHALA LETTER IRUYANNA -->
+ <Key
+ latin:keySpec="&#x0D8D;"
+ latin:additionalMoreKeys="4" />
+ <!-- U+0D94: "ඔ" SINHALA LETTER OYANNA -->
+ <Key
+ latin:keySpec="&#x0D94;"
+ latin:additionalMoreKeys="5" />
+ <!-- U+0DC1: "ශ" SINHALA LETTER TAALUJA SAYANNA -->
+ <Key
+ latin:keySpec="&#x0DC1;"
+ latin:additionalMoreKeys="6" />
+ <!-- U+0DB9: "ඹ" SINHALA LETTER AMBA BAYANNA -->
+ <Key
+ latin:keySpec="&#x0DB9;"
+ latin:additionalMoreKeys="7" />
+ <!-- U+0DC2: "ෂ" SINHALA LETTER MUURDHAJA SAYANNA -->
+ <Key
+ latin:keySpec="&#x0DC2;"
+ latin:additionalMoreKeys="8" />
+ <!-- U+0DB0: "ධ" SINHALA LETTER MAHAAPRAANA DAYANNA -->
+ <Key
+ latin:keySpec="&#x0DB0;"
+ latin:additionalMoreKeys="9" />
+ <!-- U+0DA1: "ඡ" SINHALA LETTER MAHAAPRAANA CAYANNA -->
+ <Key
+ latin:keySpec="&#x0DA1;"
+ latin:additionalMoreKeys="0" />
+ <!-- U+0DA5: "ඥ" SINHALA LETTER TAALUJA SANYOOGA NAAKSIKYAYA
+ U+0DF4: "෴" SINHALA PUNCTUATION KUNDDALIYA -->
+ <Key
+ latin:keySpec="&#x0DA5;"
+ latin:moreKeys="&#x0DF4;" />
+ </case>
+ <default>
+ <!-- U+0DD4: "ු" SINHALA VOWEL SIGN KETTI PAA-PILLA -->
+ <Key
+ latin:keySpec="&#x0DD4;"
+ latin:additionalMoreKeys="1" />
+ <!-- U+0D85: "අ" SINHALA LETTER AYANNA -->
+ <Key
+ latin:keySpec="&#x0D85;"
+ latin:additionalMoreKeys="2" />
+ <!-- U+0DD0: "ැ" SINHALA VOWEL SIGN KETTI AEDA-PILLA -->
+ <Key
+ latin:keySpec="&#x0DD0;"
+ latin:additionalMoreKeys="3" />
+ <!-- U+0DBB: "ර" SINHALA LETTER RAYANNA -->
+ <Key
+ latin:keySpec="&#x0DBB;"
+ latin:additionalMoreKeys="4" />
+ <!-- U+0D91: "එ" SINHALA LETTER EYANNA -->
+ <Key
+ latin:keySpec="&#x0D91;"
+ latin:additionalMoreKeys="5" />
+ <!-- U+0DC4: "හ" SINHALA LETTER HAYANNA -->
+ <Key
+ latin:keySpec="&#x0DC4;"
+ latin:additionalMoreKeys="6" />
+ <!-- U+0DB8: "ම" SINHALA LETTER MAYANNA -->
+ <Key
+ latin:keySpec="&#x0DB8;"
+ latin:additionalMoreKeys="7" />
+ <!-- U+0DC3: "ස" SINHALA LETTER DANTAJA SAYANNA -->
+ <Key
+ latin:keySpec="&#x0DC3;"
+ latin:additionalMoreKeys="8" />
+ <!-- U+0DAF: "ද" SINHALA LETTER ALPAPRAANA DAYANNA
+ U+0DB3: "ඳ" SINHALA LETTER SANYAKA DAYANNA -->
+ <Key
+ latin:keySpec="&#x0DAF;"
+ latin:moreKeys="&#x0DB3;"
+ latin:additionalMoreKeys="9" />
+ <!-- U+0DA0: "ච" SINHALA LETTER ALPAPRAANA CAYANNA -->
+ <Key
+ latin:keySpec="&#x0DA0;"
+ latin:additionalMoreKeys="0" />
+ <!-- U+0DA4: "ඤ" SINHALA LETTER TAALUJA NAASIKYAYA
+ U+0DF4: "෴" SINHALA PUNCTUATION KUNDDALIYA -->
+ <Key
+ latin:keySpec="&#x0DA4;"
+ latin:moreKeys="&#x0DF4;" />
+ </default>
+ </switch>
+</merge>
diff --git a/java/res/xml/rowkeys_sinhala2.xml b/java/res/xml/rowkeys_sinhala2.xml
new file mode 100644
index 000000000..91c1928ba
--- /dev/null
+++ b/java/res/xml/rowkeys_sinhala2.xml
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 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.
+*/
+-->
+
+<merge
+ xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
+>
+ <switch>
+ <case
+ latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLocked|alphabetShiftLockShifted"
+ >
+ <!-- U+0DDF: "ෟ" SINHALA VOWEL SIGN GAYANUKITTA -->
+ <Key
+ latin:keySpec="&#x0DDF;" />
+ <!-- U+0DD3: "ී" SINHALA VOWEL SIGN DIGA IS-PILLA -->
+ <Key
+ latin:keySpec="&#x0DD3;" />
+ <!-- U+0DD8: "ෘ" SINHALA VOWEL SIGN GAETTA-PILLA -->
+ <Key
+ latin:keySpec="&#x0DD8;" />
+ <!-- U+0DC6: "ෆ" SINHALA LETTER FAYANNA -->
+ <Key
+ latin:keySpec="&#x0DC6;" />
+ <!-- U+0DA8: "ඨ" SINHALA LETTER MAHAAPRAANA TTAYANNA -->
+ <Key
+ latin:keySpec="&#x0DA8;" />
+ <!-- U+0DCA/U+200D/U+0DBA: "්‍ය" SINHALA SIGN AL-LAKUNA/ZERO WIDTH JOINER/SINHALA LETTER YAYANNA -->
+ <Key
+ latin:keySpec="&#x0DCA;&#x200D;&#x0DBA;" />
+ <!-- U+0DC5/U+0DD4: "ළු" SINHALA LETTER MUURDHAJA LAYANNA/SINHALA VOWEL SIGN KETTI PAA-PILLA -->
+ <Key
+ latin:keySpec="&#x0DC5;&#x0DD4;" />
+ <!-- U+0DAB: "ණ" SINHALA LETTER MUURDHAJA NAYANNA -->
+ <Key
+ latin:keySpec="&#x0DAB;" />
+ <!-- U+0D9B: "ඛ" SINHALA LETTER MAHAAPRAANA KAYANNA -->
+ <Key
+ latin:keySpec="&#x0D9B;" />
+ <!-- U+0DAE: "ථ" SINHALA LETTER MAHAAPRAANA TAYANNA -->
+ <Key
+ latin:keySpec="&#x0DAE;" />
+ <!-- U+0DCA/U+200D/U+0DBB: "්‍ර" SINHALA SIGN AL-LAKUNA/ZERO WIDTH JOINER/SINHALA LETTER RAYANNA -->
+ <Key
+ latin:keySpec="&#x0DCA;&#x200D;&#x0DBB;" />
+ </case>
+ <default>
+ <!-- U+0DCA: "්" SINHALA SIGN AL-LAKUNA -->
+ <Key
+ latin:keySpec="&#x0DCA;" />
+ <!-- U+0DD2: "ි" SINHALA VOWEL SIGN KETTI IS-PILLA -->
+ <Key
+ latin:keySpec="&#x0DD2;" />
+ <!-- U+0DCF: "ා" SINHALA VOWEL SIGN AELA-PILLA -->
+ <Key
+ latin:keySpec="&#x0DCF;" />
+ <!-- U+0DD9: "ෙ" SINHALA VOWEL SIGN KOMBUVA -->
+ <Key
+ latin:keySpec="&#x0DD9;" />
+ <!-- U+0DA7: "ට" SINHALA LETTER ALPAPRAANA TTAYANNA -->
+ <Key
+ latin:keySpec="&#x0DA7;" />
+ <!-- U+0DBA: "ය" SINHALA LETTER YAYANNA -->
+ <Key
+ latin:keySpec="&#x0DBA;" />
+ <!-- U+0DC0: "ව" SINHALA LETTER VAYANNA -->
+ <Key
+ latin:keySpec="&#x0DC0;" />
+ <!-- U+0DB1: "න" SINHALA LETTER DANTAJA NAYANNA -->
+ <Key
+ latin:keySpec="&#x0DB1;" />
+ <!-- U+0D9A: "ක" SINHALA LETTER ALPAPRAANA KAYANNA -->
+ <Key
+ latin:keySpec="&#x0D9A;" />
+ <!-- U+0DAD: "ත" SINHALA LETTER ALPAPRAANA TAYANNA -->
+ <Key
+ latin:keySpec="&#x0DAD;" />
+ <!-- U+0D8F: "ඏ" SINHALA LETTER ILUYANNA -->
+ <Key
+ latin:keySpec="&#x0D8F;" />
+ </default>
+ </switch>
+</merge>
diff --git a/java/res/xml/rowkeys_sinhala3.xml b/java/res/xml/rowkeys_sinhala3.xml
new file mode 100644
index 000000000..64ba9f339
--- /dev/null
+++ b/java/res/xml/rowkeys_sinhala3.xml
@@ -0,0 +1,94 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 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.
+*/
+-->
+
+<merge
+ xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
+>
+ <switch>
+ <case
+ latin:keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLocked|alphabetShiftLockShifted"
+ >
+ <!-- U+0D9E: "ඞ" SINHALA LETTER KANTAJA NAASIKYAYA -->
+ <Key
+ latin:keySpec="&#x0D9E;" />
+ <!-- U+0DA3: "ඣ" SINHALA LETTER MAHAAPRAANA JAYANNA -->
+ <Key
+ latin:keySpec="&#x0DA3;" />
+ <!-- U+0DAA: "ඪ" SINHALA LETTER MAHAAPRAANA DDAYANNA -->
+ <Key
+ latin:keySpec="&#x0DAA;" />
+ <!-- U+0D8A: "ඊ" SINHALA LETTER IIYANNA -->
+ <Key
+ latin:keySpec="&#x0D8A;" />
+ <!-- U+0DB7: "භ" SINHALA LETTER MAHAAPRAANA BAYANNA -->
+ <Key
+ latin:keySpec="&#x0DB7;" />
+ <!-- U+0DB5: "ඵ" SINHALA LETTER MAHAAPRAANA PAYANNA -->
+ <Key
+ latin:keySpec="&#x0DB5;" />
+ <!-- U+0DC5: "ළ" SINHALA LETTER MUURDHAJA LAYANNA -->
+ <Key
+ latin:keySpec="&#x0DC5;" />
+ <!-- U+0D9D: "ඝ" SINHALA LETTER MAHAAPRAANA GAYANNA -->
+ <Key
+ latin:keySpec="&#x0D9D;" />
+ <!-- U+0DBB/U+0DCA/U+200D: "ර්‍" SINHALA LETTER RAYANNA/SINHALA SIGN AL-LAKUNA/ZERO WIDTH JOINER -->
+ <Key
+ latin:keySpec="&#x0DBB;&#x0DCA;&#x200D;" />
+ </case>
+ <default>
+ <!-- U+0D82: "ං" SINHALA SIGN ANUSVARAYA
+ U+0D83: "ඃ" SINHALA SIGN VISARGAYA -->
+ <Key
+ latin:keySpec="&#x0D82;"
+ latin:moreKeys="&#x0D83;" />
+ <!-- U+0DA2: "ජ" SINHALA LETTER ALPAPRAANA JAYANNA
+ U+0DA6: "ඦ" SINHALA LETTER SANYAKA JAYANNA -->
+ <Key
+ latin:keySpec="&#x0DA2;"
+ latin:moreKeys="&#x0DA6;" />
+ <!-- U+0DA9: "ඩ" SINHALA LETTER ALPAPRAANA DDAYANNA
+ U+0DAC: "ඬ" SINHALA LETTER SANYAKA DDAYANNA -->
+ <Key
+ latin:keySpec="&#x0DA9;"
+ latin:moreKeys="&#x0DAC;" />
+ <!-- U+0D89: "ඉ" SINHALA LETTER IYANNA -->
+ <Key
+ latin:keySpec="&#x0D89;" />
+ <!-- U+0DB6: "බ" SINHALA LETTER ALPAPRAANA BAYANNA -->
+ <Key
+ latin:keySpec="&#x0DB6;" />
+ <!-- U+0DB4: "ප" SINHALA LETTER ALPAPRAANA PAYANNA -->
+ <Key
+ latin:keySpec="&#x0DB4;" />
+ <!-- U+0DBD: "ල" SINHALA LETTER DANTAJA LAYANNA -->
+ <Key
+ latin:keySpec="&#x0DBD;" />
+ <!-- U+0D9C: "ග" SINHALA LETTER ALPAPRAANA GAYANNA
+ U+0D9F: "ඟ" SINHALA LETTER SANYAKA GAYANNA -->
+ <Key
+ latin:keySpec="&#x0D9C;"
+ latin:moreKeys="&#x0D9F;" />
+ <!-- U+0DF3: "ෳ" SINHALA VOWEL SIGN DIGA GAYANUKITTA -->
+ <Key
+ latin:keySpec="&#x0DF3;" />
+ </default>
+ </switch>
+</merge>
diff --git a/java/res/xml/rows_sinhala.xml b/java/res/xml/rows_sinhala.xml
new file mode 100644
index 000000000..b47b373b6
--- /dev/null
+++ b/java/res/xml/rows_sinhala.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 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.
+*/
+-->
+
+<merge
+ xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
+>
+ <include
+ latin:keyboardLayout="@xml/key_styles_common" />
+ <Row
+ latin:keyWidth="9.091%p"
+ >
+ <include
+ latin:keyboardLayout="@xml/rowkeys_sinhala1" />
+ </Row>
+ <Row
+ latin:keyWidth="9.091%p"
+ >
+ <include
+ latin:keyboardLayout="@xml/rowkeys_sinhala2" />
+ </Row>
+ <Row
+ latin:keyWidth="8.711%p"
+ >
+ <Key
+ latin:keyStyle="shiftKeyStyle"
+ latin:keyWidth="10.8%p" />
+ <include
+ latin:keyboardLayout="@xml/rowkeys_sinhala3" />
+ <Key
+ latin:keyStyle="deleteKeyStyle"
+ latin:keyWidth="fillRight" />
+ </Row>
+ <include
+ latin:keyboardLayout="@xml/row_qwerty4" />
+</merge>