aboutsummaryrefslogtreecommitdiffstats
path: root/java/res
diff options
context:
space:
mode:
Diffstat (limited to 'java/res')
-rw-r--r--java/res/values-es/donottranslate-more-keys.xml2
-rw-r--r--java/res/values/attrs.xml3
-rw-r--r--java/res/values/donottranslate-more-keys.xml4
-rw-r--r--java/res/values/donottranslate.xml16
-rw-r--r--java/res/values/keycodes.xml4
-rw-r--r--java/res/xml-ka/keyboard_set.xml42
-rw-r--r--java/res/xml-sw600dp/key_styles_common.xml29
-rw-r--r--java/res/xml-sw600dp/rows_georgian.xml294
-rw-r--r--java/res/xml-sw768dp/key_styles_common.xml29
-rw-r--r--java/res/xml-sw768dp/rows_georgian.xml300
-rw-r--r--java/res/xml/kbd_georgian.xml (renamed from java/res/xml/key_navigation_tab.xml)21
-rw-r--r--java/res/xml/key_f1.xml97
-rw-r--r--java/res/xml/key_styles_common.xml23
-rw-r--r--java/res/xml/key_styles_enter.xml (renamed from java/res/xml/key_styles_enter_phone.xml)69
-rw-r--r--java/res/xml/key_styles_enter_tablet.xml111
-rw-r--r--java/res/xml/key_symbols_f1.xml67
-rw-r--r--java/res/xml/method.xml8
-rw-r--r--java/res/xml/row_qwerty4.xml58
-rw-r--r--java/res/xml/row_symbols4.xml67
-rw-r--r--java/res/xml/row_symbols_shift4.xml84
-rw-r--r--java/res/xml/rows_georgian.xml328
-rw-r--r--java/res/xml/rows_symbols.xml33
-rw-r--r--java/res/xml/rows_symbols_shift.xml27
23 files changed, 1198 insertions, 518 deletions
diff --git a/java/res/values-es/donottranslate-more-keys.xml b/java/res/values-es/donottranslate-more-keys.xml
index 4833d6970..f56b1d54f 100644
--- a/java/res/values-es/donottranslate-more-keys.xml
+++ b/java/res/values-es/donottranslate-more-keys.xml
@@ -69,5 +69,5 @@
<string name="more_keys_for_c">&#x00E7;,&#x0107;,&#x010D;</string>
<!-- U+00A1: "¡" INVERTED EXCLAMATION MARK
U+00BF: "¿" INVERTED QUESTION MARK -->
- <string name="more_keys_for_punctuation">"!fixedColumnOrder!8,\",\',-,&#x00A1;,!,&#x00BF;,\\,,\?,\@,&amp;,+,;,:,/,(,)"</string>
+ <string name="more_keys_for_punctuation">"!fixedColumnOrder!7,#,-,&#x00A1;,!,&#x00BF;,\\,,\?,\\%,+,;,:,/,(,),\@,&amp;,\",\'"</string>
</resources>
diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml
index f91b0a3db..a5d590e04 100644
--- a/java/res/values/attrs.xml
+++ b/java/res/values/attrs.xml
@@ -355,7 +355,8 @@
<enum name="phone" value="4" />
<enum name="number" value="5" />
</attr>
- <attr name="navigateAction" format="boolean" />
+ <attr name="navigateNext" format="boolean" />
+ <attr name="navigatePrevious" format="boolean" />
<attr name="passwordInput" format="boolean" />
<attr name="clobberSettingsKey" format="boolean" />
<attr name="shortcutKeyEnabled" format="boolean" />
diff --git a/java/res/values/donottranslate-more-keys.xml b/java/res/values/donottranslate-more-keys.xml
index f1c2d2bfc..0581a6162 100644
--- a/java/res/values/donottranslate-more-keys.xml
+++ b/java/res/values/donottranslate-more-keys.xml
@@ -65,7 +65,7 @@
<string name="more_keys_for_currency_pound">&#x00A2;,$,&#x20AC;,&#x00A5;,&#x20B1;</string>
<string name="more_keys_for_currency_general">&#x00A2;,$,&#x20AC;,&#x00A3;,&#x00A5;,&#x20B1;</string>
<string name="more_keys_for_smiley">"!fixedColumnOrder!5,=-O|=-O ,:-P|:-P ,;-)|;-) ,:-(|:-( ,:-)|:-) ,:-!|:-! ,:-$|:-$ ,B-)|B-) ,:O|:O ,:-*|:-* ,:-D|:-D ,:\'(|:\'( ,:-\\\\|:-\\\\ ,O:-)|O:-) ,:-[|:-[ "</string>
- <string name="more_keys_for_punctuation">"!fixedColumnOrder!7,\",\',-,:,!,\\,,\?,\@,&amp;,+,;,/,(,)"</string>
+ <string name="more_keys_for_punctuation">"!fixedColumnOrder!8,\",\',#,-,:,!,\\,,\?,\@,&amp;,\\%,+,;,/,(,)"</string>
<string name="keyhintlabel_for_punctuation"></string>
<string name="keylabel_for_popular_domain">".com"</string>
<!-- popular web domains for the locale - most popular, displayed on the keyboard -->
@@ -118,6 +118,8 @@
<string name="settings_as_more_key">\@icon/settingsKey|\@integer/key_settings</string>
<string name="keylabel_for_comma">,</string>
<string name="more_keys_for_comma"></string>
+ <string name="action_next_as_more_key">\@string/label_next_key|\@integer/key_action_next</string>
+ <string name="action_previous_as_more_key">\@string/label_previous_key|\@integer/key_action_previous</string>
<string name="keylabel_for_symbols_question">\?</string>
<string name="keylabel_for_symbols_semicolon">;</string>
<string name="keylabel_for_symbols_percent">%</string>
diff --git a/java/res/values/donottranslate.xml b/java/res/values/donottranslate.xml
index 69d923a94..94da9462f 100644
--- a/java/res/values/donottranslate.xml
+++ b/java/res/values/donottranslate.xml
@@ -20,17 +20,17 @@
<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<!-- Symbols that are suggested between words -->
<string name="suggested_punctuations">!,?,\\,,:,;,\",(,),\',-,/,@,_</string>
- <!-- Symbols that should be swapped with a magic space -->
- <string name="magic_space_swapping_symbols">.,;:!?)]}\"</string>
- <!-- Symbols that should strip a magic space -->
- <string name="magic_space_stripping_symbols">"&#x0009;&#x0020;\n/_\'-"</string>
- <!-- Symbols that should convert magic spaces into real space -->
- <string name="magic_space_promoting_symbols">([*&amp;@{&lt;&gt;+=|</string>
+ <!-- Symbols that should be swapped with a weak space -->
+ <string name="weak_space_swapping_symbols">.,;:!?)]}\"</string>
+ <!-- Symbols that should strip a weak space -->
+ <string name="weak_space_stripping_symbols">"&#x0009;&#x0020;\n/_\'-"</string>
+ <!-- Symbols that should convert weak spaces into real space -->
+ <string name="weak_space_promoting_symbols">([*&amp;@{&lt;&gt;+=|</string>
<!-- Symbols that do NOT separate words -->
<string name="symbols_excluded_from_word_separators">\'-</string>
<!-- Word separator list is the union of all symbols except those that are not separators:
- magic_space_swapping_symbols | magic_space_stripping_symbols |
- magic_space_neutral_symbols \ symbols_excluded_from_word_separators -->
+ weak_space_swapping_symbols | weak_space_stripping_symbols
+ \ symbols_excluded_from_word_separators -->
<!-- Symbol characters list that should switch back to the main layout -->
<!-- U+2018: "‘" LEFT SINGLE QUOTATION MARK
U+2019: "’" RIGHT SINGLE QUOTATION MARK
diff --git a/java/res/values/keycodes.xml b/java/res/values/keycodes.xml
index c85c02263..7f9e4bda4 100644
--- a/java/res/values/keycodes.xml
+++ b/java/res/values/keycodes.xml
@@ -30,5 +30,7 @@
<integer name="key_settings">-5</integer>
<integer name="key_shortcut">-6</integer>
<integer name="key_action_enter">-7</integer>
- <integer name="key_unspecified">-9</integer>
+ <integer name="key_action_next">-8</integer>
+ <integer name="key_action_previous">-9</integer>
+ <integer name="key_unspecified">-10</integer>
</resources>
diff --git a/java/res/xml-ka/keyboard_set.xml b/java/res/xml-ka/keyboard_set.xml
new file mode 100644
index 000000000..1b0bc2df6
--- /dev/null
+++ b/java/res/xml-ka/keyboard_set.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2012, 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.
+*/
+-->
+
+<KeyboardSet
+ xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
+ latin:keyboardLocale="ka">
+ <Element
+ latin:elementName="alphabet"
+ latin:elementKeyboard="@xml/kbd_georgian" />
+ <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" />
+</KeyboardSet>
diff --git a/java/res/xml-sw600dp/key_styles_common.xml b/java/res/xml-sw600dp/key_styles_common.xml
index bb75b1c82..2fa8b3812 100644
--- a/java/res/xml-sw600dp/key_styles_common.xml
+++ b/java/res/xml-sw600dp/key_styles_common.xml
@@ -73,7 +73,7 @@
latin:keyActionFlags="isRepeatable|noKeyPreview"
latin:backgroundType="functional" />
<include
- latin:keyboardLayout="@xml/key_styles_enter_tablet" />
+ latin:keyboardLayout="@xml/key_styles_enter" />
<key-style
latin:styleName="spaceKeyStyle"
latin:code="@integer/key_space"
@@ -102,12 +102,27 @@
latin:keyIcon="iconSettingsKey"
latin:keyActionFlags="noKeyPreview|altCodeWhileTyping"
latin:backgroundType="functional" />
- <key-style
- latin:styleName="tabKeyStyle"
- latin:code="@integer/key_tab"
- latin:keyIcon="iconTabKey"
- latin:keyIconPreview="iconPreviewTabKey"
- latin:backgroundType="functional" />
+ <switch>
+ <case
+ latin:keyboardSetElement="alphabetManualShifted|alphabetShiftLockShifted"
+ latin:navigatePrevious="true"
+ >
+ <key-style
+ latin:styleName="tabKeyStyle"
+ latin:code="@integer/key_action_previous"
+ latin:keyIcon="iconTabKey"
+ latin:keyIconPreview="iconPreviewTabKey"
+ latin:backgroundType="functional" />
+ </case>
+ <default>
+ <key-style
+ latin:styleName="tabKeyStyle"
+ latin:code="@integer/key_tab"
+ latin:keyIcon="iconTabKey"
+ latin:keyIconPreview="iconPreviewTabKey"
+ latin:backgroundType="functional" />
+ </default>
+ </switch>
<key-style
latin:styleName="toSymbolKeyStyle"
latin:code="@integer/key_switch_alpha_symbol"
diff --git a/java/res/xml-sw600dp/rows_georgian.xml b/java/res/xml-sw600dp/rows_georgian.xml
new file mode 100644
index 000000000..c04df48c4
--- /dev/null
+++ b/java/res/xml-sw600dp/rows_georgian.xml
@@ -0,0 +1,294 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2012, 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.0%p"
+ >
+ <switch>
+ <case
+ latin:keyboardSetElement="alphabetManualShifted|alphabetShiftLockShifted"
+ >
+ <Key
+ latin:keyLabel="Q"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10ED: "ჭ" GEORGIAN LETTER CHAR -->
+ <Key
+ latin:keyLabel="&#x10ED;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="E"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E6: "ღ" GEORGIAN LETTER GHAN -->
+ <Key
+ latin:keyLabel="&#x10E6;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D7: "თ" GEORGIAN LETTER TAN -->
+ <Key
+ latin:keyLabel="&#x10D7;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="Y"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="U"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="I"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="O"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="P"
+ latin:keyLabelFlags="preserveCase" />
+ </case>
+ <default>
+ <!-- U+10E5: "ქ" GEORGIAN LETTER GHAN -->
+ <Key
+ latin:keyLabel="&#x10E5;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10EC: "წ" GEORGIAN LETTER CIL -->
+ <Key
+ latin:keyLabel="&#x10EC;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D4: "ე" GEORGIAN LETTER EN
+ U+10F1: "ჱ" GEORGIAN LETTER HE -->
+ <Key
+ latin:keyLabel="&#x10D4;"
+ latin:moreKeys="&#x10F1;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E0: "რ" GEORGIAN LETTER RAE -->
+ <Key
+ latin:keyLabel="&#x10E0;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E2: "ტ" GEORGIAN LETTER TAR -->
+ <Key
+ latin:keyLabel="&#x10E2;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E7: "ყ" GEORGIAN LETTER QAR
+ U+10F8: "ჸ" GEORGIAN LETTER ELIFI -->
+ <Key
+ latin:keyLabel="&#x10E7;"
+ latin:moreKeys="&#x10F8;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E3: "უ" GEORGIAN LETTER UN -->
+ <Key
+ latin:keyLabel="&#x10E3;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D8: "ი" GEORGIAN LETTER IN
+ U+10F2: "ჲ" GEORGIAN LETTER HIE -->
+ <Key
+ latin:keyLabel="&#x10D8;"
+ latin:moreKeys="&#x10F2;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DD: "ო" GEORGIAN LETTER ON -->
+ <Key
+ latin:keyLabel="&#x10DD;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DE: "პ" GEORGIAN LETTER PAR -->
+ <Key
+ latin:keyLabel="&#x10DE;"
+ latin:keyLabelFlags="preserveCase" />
+ </default>
+ </switch>
+ <Key
+ latin:keyStyle="deleteKeyStyle"
+ latin:keyXPos="-10.0%p"
+ latin:keyWidth="fillBoth" />
+ </Row>
+ <Row
+ latin:keyWidth="9.0%p"
+ >
+ <switch>
+ <case
+ latin:keyboardSetElement="alphabetManualShifted|alphabetShiftLockShifted"
+ >
+ <Key
+ latin:keyLabel="A"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyXPos="4.5%p" />
+ <!-- U+10E8: "შ" GEORGIAN LETTER SHIN -->
+ <Key
+ latin:keyLabel="&#x10E8;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="D"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="F"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="G"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="H"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DF: "ჟ" GEORGIAN LETTER ZHAR -->
+ <Key
+ latin:keyLabel="&#x10DF;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="K"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="L"
+ latin:keyLabelFlags="preserveCase" />
+ </case>
+ <default>
+ <!-- U+10D0: "ა" GEORGIAN LETTER AN
+ U+10FA: "ჺ" GEORGIAN LETTER AIN -->
+ <Key
+ latin:keyLabel="&#x10D0;"
+ latin:moreKeys="&#x10FA;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyXPos="4.5%p" />
+ <!-- U+10E1: "ს" GEORGIAN LETTER SAN -->
+ <Key
+ latin:keyLabel="&#x10E1;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D3: "დ" GEORGIAN LETTER DON -->
+ <Key
+ latin:keyLabel="&#x10D3;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E4: "ფ" GEORGIAN LETTER PHAR
+ U+10F6: "ჶ" GEORGIAN LETTER FI -->
+ <Key
+ latin:keyLabel="&#x10E4;"
+ latin:moreKeys="&#x10F6;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D2: "გ" GEORGIAN LETTER GAN
+ U+10F9: "ჹ" GEORGIAN LETTER TURNED GAN -->
+ <Key
+ latin:keyLabel="&#x10D2;"
+ latin:moreKeys="&#x10F9;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10F0: "ჰ" GEORGIAN LETTER HAE
+ U+10F5: "ჵ" GEORGIAN LETTER HOE -->
+ <Key
+ latin:keyLabel="&#x10F0;"
+ latin:moreKeys="&#x10F5;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10EF: "ჯ" GEORGIAN LETTER JHAN
+ U+10F7: "ჷ" GEORGIAN LETTER YN -->
+ <Key
+ latin:keyLabel="&#x10EF;"
+ latin:moreKeys="&#x10F7;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D9: "კ" GEORGIAN LETTER KAN -->
+ <Key
+ latin:keyLabel="&#x10D9;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DA: "ლ" GEORGIAN LETTER LAS -->
+ <Key
+ latin:keyLabel="&#x10DA;"
+ latin:keyLabelFlags="preserveCase" />
+ </default>
+ </switch>
+ <Key
+ latin:keyStyle="enterKeyStyle"
+ latin:keyXPos="-14.6%p"
+ latin:keyWidth="fillBoth" />
+ </Row>
+ <Row
+ latin:keyWidth="8.9%p"
+ >
+ <Key
+ latin:keyStyle="shiftKeyStyle"
+ latin:keyWidth="10.0%p" />
+ <switch>
+ <case
+ latin:keyboardSetElement="alphabetManualShifted|alphabetShiftLockShifted"
+ >
+ <!-- U+10EB: "ძ" GEORGIAN LETTER JIL -->
+ <Key
+ latin:keyLabel="&#x10EB;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="X"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E9: "ჩ" GEORGIAN LETTER CHIN -->
+ <Key
+ latin:keyLabel="&#x10E9;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="V"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="B"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="N"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="M"
+ latin:keyLabelFlags="preserveCase" />
+ </case>
+ <default>
+ <!-- U+10D6: "ზ" GEORGIAN LETTER ZEN -->
+ <Key
+ latin:keyLabel="&#x10D6;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10EE: "ხ" GEORGIAN LETTER XAN
+ U+10F4: "ჴ" GEORGIAN LETTER HAR -->
+ <Key
+ latin:keyLabel="&#x10EE;"
+ latin:moreKeys="&#x10F4;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10EA: "ც" GEORGIAN LETTER CAN -->
+ <Key
+ latin:keyLabel="&#x10EA;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D5: "ვ" GEORGIAN LETTER VIN
+ U+10F3: "ჳ" GEORGIAN LETTER WE -->
+ <Key
+ latin:keyLabel="&#x10D5;"
+ latin:moreKeys="&#x10F3;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D1: "ბ" GEORGIAN LETTER BAN -->
+ <Key
+ latin:keyLabel="&#x10D1;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DC: "ნ" GEORGIAN LETTER NAR
+ U+10FC: "ჼ" MODIFIER LETTER GEORGIAN NAR -->
+ <Key
+ latin:keyLabel="&#x10DC;"
+ latin:moreKeys="&#x10FC;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DB: "მ" GEORGIAN LETTER MAN -->
+ <Key
+ latin:keyLabel="&#x10DB;"
+ latin:keyLabelFlags="preserveCase" />
+ </default>
+ </switch>
+ <include
+ latin:keyboardLayout="@xml/keys_comma_period" />
+ <include
+ latin:keyboardLayout="@xml/key_smiley"
+ latin:keyXPos="-8.9%p"
+ latin:keyWidth="fillBoth" />
+ </Row>
+ <include
+ latin:keyboardLayout="@xml/row_qwerty4" />
+</merge>
diff --git a/java/res/xml-sw768dp/key_styles_common.xml b/java/res/xml-sw768dp/key_styles_common.xml
index 9da0d1f1a..5c35f1cfb 100644
--- a/java/res/xml-sw768dp/key_styles_common.xml
+++ b/java/res/xml-sw768dp/key_styles_common.xml
@@ -72,7 +72,7 @@
latin:keyActionFlags="isRepeatable|noKeyPreview"
latin:backgroundType="functional" />
<include
- latin:keyboardLayout="@xml/key_styles_enter_tablet" />
+ latin:keyboardLayout="@xml/key_styles_enter" />
<key-style
latin:styleName="spaceKeyStyle"
latin:code="@integer/key_space"
@@ -101,12 +101,27 @@
latin:keyIcon="iconSettingsKey"
latin:keyActionFlags="noKeyPreview|altCodeWhileTyping"
latin:backgroundType="functional" />
- <key-style
- latin:styleName="tabKeyStyle"
- latin:code="@integer/key_tab"
- latin:keyLabel="@string/label_tab_key"
- latin:keyLabelFlags="fontNormal|preserveCase"
- latin:backgroundType="functional" />
+ <switch>
+ <case
+ latin:keyboardSetElement="alphabetManualShifted|alphabetShiftLockShifted"
+ latin:navigatePrevious="true"
+ >
+ <key-style
+ latin:styleName="tabKeyStyle"
+ latin:code="@integer/key_action_previous"
+ latin:keyLabel="@string/label_tab_key"
+ latin:keyLabelFlags="fontNormal|preserveCase"
+ latin:backgroundType="functional" />
+ </case>
+ <default>
+ <key-style
+ latin:styleName="tabKeyStyle"
+ latin:code="@integer/key_tab"
+ latin:keyLabel="@string/label_tab_key"
+ latin:keyLabelFlags="fontNormal|preserveCase"
+ latin:backgroundType="functional" />
+ </default>
+ </switch>
<key-style
latin:styleName="toSymbolKeyStyle"
latin:code="@integer/key_switch_alpha_symbol"
diff --git a/java/res/xml-sw768dp/rows_georgian.xml b/java/res/xml-sw768dp/rows_georgian.xml
new file mode 100644
index 000000000..d991033d3
--- /dev/null
+++ b/java/res/xml-sw768dp/rows_georgian.xml
@@ -0,0 +1,300 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2012, 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.282%p"
+ >
+ <Key
+ latin:keyStyle="tabKeyStyle"
+ latin:keyLabelFlags="alignLeft"
+ latin:keyWidth="7.969%p" />
+ <switch>
+ <case
+ latin:keyboardSetElement="alphabetManualShifted|alphabetShiftLockShifted"
+ >
+ <Key
+ latin:keyLabel="Q"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10ED: "ჭ" GEORGIAN LETTER CHAR -->
+ <Key
+ latin:keyLabel="&#x10ED;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="E"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E6: "ღ" GEORGIAN LETTER GHAN -->
+ <Key
+ latin:keyLabel="&#x10E6;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D7: "თ" GEORGIAN LETTER TAN -->
+ <Key
+ latin:keyLabel="&#x10D7;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="Y"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="U"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="I"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="O"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="P"
+ latin:keyLabelFlags="preserveCase" />
+ </case>
+ <default>
+ <!-- U+10E5: "ქ" GEORGIAN LETTER GHAN -->
+ <Key
+ latin:keyLabel="&#x10E5;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10EC: "წ" GEORGIAN LETTER CIL -->
+ <Key
+ latin:keyLabel="&#x10EC;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D4: "ე" GEORGIAN LETTER EN
+ U+10F1: "ჱ" GEORGIAN LETTER HE -->
+ <Key
+ latin:keyLabel="&#x10D4;"
+ latin:moreKeys="&#x10F1;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E0: "რ" GEORGIAN LETTER RAE -->
+ <Key
+ latin:keyLabel="&#x10E0;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E2: "ტ" GEORGIAN LETTER TAR -->
+ <Key
+ latin:keyLabel="&#x10E2;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E7: "ყ" GEORGIAN LETTER QAR
+ U+10F8: "ჸ" GEORGIAN LETTER ELIFI -->
+ <Key
+ latin:keyLabel="&#x10E7;"
+ latin:moreKeys="&#x10F8;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E3: "უ" GEORGIAN LETTER UN -->
+ <Key
+ latin:keyLabel="&#x10E3;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D8: "ი" GEORGIAN LETTER IN
+ U+10F2: "ჲ" GEORGIAN LETTER HIE -->
+ <Key
+ latin:keyLabel="&#x10D8;"
+ latin:moreKeys="&#x10F2;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DD: "ო" GEORGIAN LETTER ON -->
+ <Key
+ latin:keyLabel="&#x10DD;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DE: "პ" GEORGIAN LETTER PAR -->
+ <Key
+ latin:keyLabel="&#x10DE;"
+ latin:keyLabelFlags="preserveCase" />
+ </default>
+ </switch>
+ <Key
+ latin:keyStyle="deleteKeyStyle"
+ latin:keyXPos="-9.219%p"
+ latin:keyWidth="fillBoth"/>
+ </Row>
+ <Row
+ latin:keyWidth="8.125%p"
+ >
+ <Key
+ latin:keyStyle="toSymbolKeyStyle"
+ latin:keyLabelFlags="alignLeft"
+ latin:keyWidth="11.172%p"/>
+ <switch>
+ <case
+ latin:keyboardSetElement="alphabetManualShifted|alphabetShiftLockShifted"
+ >
+ <Key
+ latin:keyLabel="A"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E8: "შ" GEORGIAN LETTER SHIN -->
+ <Key
+ latin:keyLabel="&#x10E8;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="D"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="F"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="G"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="H"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DF: "ჟ" GEORGIAN LETTER ZHAR -->
+ <Key
+ latin:keyLabel="&#x10DF;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="K"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="L"
+ latin:keyLabelFlags="preserveCase" />
+ </case>
+ <default>
+ <!-- U+10D0: "ა" GEORGIAN LETTER AN
+ U+10FA: "ჺ" GEORGIAN LETTER AIN -->
+ <Key
+ latin:keyLabel="&#x10D0;"
+ latin:moreKeys="&#x10FA;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E1: "ს" GEORGIAN LETTER SAN -->
+ <Key
+ latin:keyLabel="&#x10E1;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D3: "დ" GEORGIAN LETTER DON -->
+ <Key
+ latin:keyLabel="&#x10D3;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E4: "ფ" GEORGIAN LETTER PHAR
+ U+10F6: "ჶ" GEORGIAN LETTER FI -->
+ <Key
+ latin:keyLabel="&#x10E4;"
+ latin:moreKeys="&#x10F6;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D2: "გ" GEORGIAN LETTER GAN
+ U+10F9: "ჹ" GEORGIAN LETTER TURNED GAN -->
+ <Key
+ latin:keyLabel="&#x10D2;"
+ latin:moreKeys="&#x10F9;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10F0: "ჰ" GEORGIAN LETTER HAE
+ U+10F5: "ჵ" GEORGIAN LETTER HOE -->
+ <Key
+ latin:keyLabel="&#x10F0;"
+ latin:moreKeys="&#x10F5;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10EF: "ჯ" GEORGIAN LETTER JHAN
+ U+10F7: "ჷ" GEORGIAN LETTER YN -->
+ <Key
+ latin:keyLabel="&#x10EF;"
+ latin:moreKeys="&#x10F7;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D9: "კ" GEORGIAN LETTER KAN -->
+ <Key
+ latin:keyLabel="&#x10D9;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DA: "ლ" GEORGIAN LETTER LAS -->
+ <Key
+ latin:keyLabel="&#x10DA;"
+ latin:keyLabelFlags="preserveCase" />
+ </default>
+ </switch>
+ <Key
+ latin:keyStyle="enterKeyStyle"
+ latin:keyXPos="-15.704%p"
+ latin:keyWidth="fillBoth" />
+ </Row>
+ <Row
+ latin:keyWidth="8.047%p"
+ >
+ <Key
+ latin:keyStyle="shiftKeyStyle"
+ latin:keyWidth="13.829%p"/>
+ <switch>
+ <case
+ latin:keyboardSetElement="alphabetManualShifted|alphabetShiftLockShifted"
+ >
+ <!-- U+10EB: "ძ" GEORGIAN LETTER JIL -->
+ <Key
+ latin:keyLabel="&#x10EB;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="X"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E9: "ჩ" GEORGIAN LETTER CHIN -->
+ <Key
+ latin:keyLabel="&#x10E9;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="V"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="B"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="N"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="M"
+ latin:keyLabelFlags="preserveCase" />
+ </case>
+ <default>
+ <!-- U+10D6: "ზ" GEORGIAN LETTER ZEN -->
+ <Key
+ latin:keyLabel="&#x10D6;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10EE: "ხ" GEORGIAN LETTER XAN
+ U+10F4: "ჴ" GEORGIAN LETTER HAR -->
+ <Key
+ latin:keyLabel="&#x10EE;"
+ latin:moreKeys="&#x10F4;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10EA: "ც" GEORGIAN LETTER CAN -->
+ <Key
+ latin:keyLabel="&#x10EA;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D5: "ვ" GEORGIAN LETTER VIN
+ U+10F3: "ჳ" GEORGIAN LETTER WE -->
+ <Key
+ latin:keyLabel="&#x10D5;"
+ latin:moreKeys="&#x10F3;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D1: "ბ" GEORGIAN LETTER BAN -->
+ <Key
+ latin:keyLabel="&#x10D1;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DC: "ნ" GEORGIAN LETTER NAR
+ U+10FC: "ჼ" MODIFIER LETTER GEORGIAN NAR -->
+ <Key
+ latin:keyLabel="&#x10DC;"
+ latin:moreKeys="&#x10FC;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DB: "მ" GEORGIAN LETTER MAN -->
+ <Key
+ latin:keyLabel="&#x10DB;"
+ latin:keyLabelFlags="preserveCase" />
+ </default>
+ </switch>
+ <include
+ latin:keyboardLayout="@xml/keys_comma_period" />
+ <Key
+ latin:keyStyle="shiftKeyStyle"
+ latin:keyXPos="-13.750%p"
+ latin:keyWidth="fillBoth" />
+ </Row>
+ <include
+ latin:keyboardLayout="@xml/row_qwerty4" />
+</merge>
diff --git a/java/res/xml/key_navigation_tab.xml b/java/res/xml/kbd_georgian.xml
index c77189fda..2dc6bf0ee 100644
--- a/java/res/xml/key_navigation_tab.xml
+++ b/java/res/xml/kbd_georgian.xml
@@ -2,7 +2,7 @@
<!--
/*
**
-** Copyright 2011, The Android Open Source Project
+** Copyright 2012, 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.
@@ -18,20 +18,9 @@
*/
-->
-<merge
+<Keyboard
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
>
- <switch>
- <case
- latin:navigateAction="true"
- >
- <Key
- latin:keyStyle="tabKeyStyle"
- latin:keyWidth="9.2%p" />
- </case>
- <!-- hasSettingsKey="false" and navigateAction="false" -->
- <default>
- <!-- No key. -->
- </default>
- </switch>
-</merge>
+ <include
+ latin:keyboardLayout="@xml/rows_georgian" />
+</Keyboard>
diff --git a/java/res/xml/key_f1.xml b/java/res/xml/key_f1.xml
deleted file mode 100644
index 6068d258a..000000000
--- a/java/res/xml/key_f1.xml
+++ /dev/null
@@ -1,97 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-**
-** Copyright 2010, 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:navigateAction="false"
- >
- <switch>
- <case
- latin:mode="url"
- >
- <Key
- latin:keyLabel="/"
- latin:keyStyle="f1PopupStyle" />
- </case>
- <case
- latin:mode="email"
- >
- <Key
- latin:keyLabel="\@"
- latin:keyStyle="f1PopupStyle" />
- </case>
- <case
- latin:hasShortcutKey="true"
- >
- <Key
- latin:keyStyle="shortcutKeyStyle" />
- </case>
- <!-- latin:hasShortcutKey="false" -->
- <default>
- <Key
- latin:keyLabel="@string/keylabel_for_comma"
- latin:keyLabelFlags="hasPopupHint"
- latin:additionalMoreKeys="@string/more_keys_for_comma"
- latin:keyStyle="f1PopupStyle" />
- </default>
- </switch>
- </case>
- <!-- TODO: Remove dedicated navigation tab key. -->
- <!-- navigateAction="true" -->
- <default>
- <switch>
- <case
- latin:mode="url"
- >
- <Key
- latin:keyLabel="/"
- latin:keyWidth="9.2%p"
- latin:keyStyle="f1PopupStyle" />
- </case>
- <case
- latin:mode="email"
- >
- <Key
- latin:keyLabel="\@"
- latin:keyWidth="9.2%p"
- latin:keyStyle="f1PopupStyle" />
- </case>
- <case
- latin:hasShortcutKey="true"
- >
- <Key
- latin:keyStyle="shortcutKeyStyle"
- latin:keyWidth="9.2%p" />
- </case>
- <!-- hasShortcutKey="false" -->
- <default>
- <Key
- latin:keyLabel="@string/keylabel_for_comma"
- latin:additionalMoreKeys="@string/more_keys_for_comma"
- latin:keyStyle="f1PopupStyle"
- latin:keyWidth="9.2%p" />
- </default>
- </switch>
- </default>
- </switch>
-</merge>
diff --git a/java/res/xml/key_styles_common.xml b/java/res/xml/key_styles_common.xml
index eabbdb399..f0ea8ce5a 100644
--- a/java/res/xml/key_styles_common.xml
+++ b/java/res/xml/key_styles_common.xml
@@ -27,13 +27,13 @@
latin:clobberSettingsKey="true"
>
<key-style
- latin:styleName="f1PopupStyle"
+ latin:styleName="f1MoreKeysStyle"
latin:backgroundType="functional" />
</case>
<!-- clobberSettingsKey="false" -->
<default>
<key-style
- latin:styleName="f1PopupStyle"
+ latin:styleName="f1MoreKeysStyle"
latin:keyLabelFlags="hasPopupHint"
latin:moreKeys="@string/settings_as_more_key"
latin:backgroundType="functional" />
@@ -77,7 +77,22 @@
latin:keyActionFlags="isRepeatable|noKeyPreview"
latin:backgroundType="functional" />
<include
- latin:keyboardLayout="@xml/key_styles_enter_phone" />
+ latin:keyboardLayout="@xml/key_styles_enter" />
+ <switch>
+ <!-- Smiley in textShortMessage field.
+ Overrides common enter key style. -->
+ <case
+ latin:mode="im"
+ >
+ <key-style
+ latin:styleName="enterKeyStyle"
+ latin:keyLabel=":-)"
+ latin:keyOutputText=":-) "
+ latin:keyLabelFlags="hasPopupHint"
+ latin:moreKeys="@string/more_keys_for_smiley"
+ latin:backgroundType="functional" />
+ </case>
+ </switch>
<key-style
latin:styleName="spaceKeyStyle"
latin:code="@integer/key_space"
@@ -91,7 +106,7 @@
latin:keyLabelFlags="preserveCase"
latin:keyActionFlags="noKeyPreview|altCodeWhileTyping"
latin:altCode="@integer/key_space"
- latin:parentStyle="f1PopupStyle" />
+ latin:parentStyle="f1MoreKeysStyle" />
<key-style
latin:styleName="settingsKeyStyle"
latin:code="@integer/key_settings"
diff --git a/java/res/xml/key_styles_enter_phone.xml b/java/res/xml/key_styles_enter.xml
index af34cb858..4c31c3e5b 100644
--- a/java/res/xml/key_styles_enter_phone.xml
+++ b/java/res/xml/key_styles_enter.xml
@@ -21,6 +21,60 @@
<merge
xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
>
+ <!-- Navigate more keys style -->
+ <switch>
+ <case
+ latin:imeAction="actionNext"
+ latin:navigatePrevious="true"
+ >
+ <key-style
+ latin:styleName="navigateMoreKeysStyle"
+ latin:keyLabelFlags="hasPopupHint|preserveCase"
+ latin:moreKeys="@string/action_previous_as_more_key" />
+ </case>
+ <case
+ latin:imeAction="actionPrevious"
+ latin:navigateNext="true"
+ >
+ <key-style
+ latin:styleName="navigateMoreKeysStyle"
+ latin:keyLabelFlags="hasPopupHint|preserveCase"
+ latin:moreKeys="@string/action_next_as_more_key" />
+ </case>
+ <!-- imeAction!="actionNext" and imeAction!="actionPrevious" -->
+ <case
+ latin:navigateNext="true"
+ latin:navigatePrevious="true"
+ >
+ <key-style
+ latin:styleName="navigateMoreKeysStyle"
+ latin:keyLabelFlags="hasPopupHint|preserveCase"
+ latin:moreKeys="!fixedColumnOrder!2,\@string/action_previous_as_more_key,\@string/action_next_as_more_key" />
+ </case>
+ <case
+ latin:navigateNext="true"
+ latin:navigatePrevious="false"
+ >
+ <key-style
+ latin:styleName="navigateMoreKeysStyle"
+ latin:keyLabelFlags="hasPopupHint|preserveCase"
+ latin:moreKeys="@string/action_next_as_more_key" />
+ </case>
+ <case
+ latin:navigateNext="false"
+ latin:navigatePrevious="true"
+ >
+ <key-style
+ latin:styleName="navigateMoreKeysStyle"
+ latin:keyLabelFlags="hasPopupHint|preserveCase"
+ latin:moreKeys="@string/action_previous_as_more_key" />
+ </case>
+ <!-- naviagteNext="false" and navigatePrevious="false" -->
+ <default>
+ <key-style
+ latin:styleName="navigateMoreKeysStyle" />
+ </default>
+ </switch>
<!-- Enter key style -->
<key-style
latin:styleName="defaultEnterKeyStyle"
@@ -28,7 +82,8 @@
latin:keyIcon="iconReturnKey"
latin:keyLabelFlags="autoXScale|preserveCase"
latin:keyActionFlags="noKeyPreview"
- latin:backgroundType="functional" />
+ latin:backgroundType="functional"
+ latin:parentStyle="navigateMoreKeysStyle" />
<key-style
latin:styleName="defaultActionKeyStyle"
latin:code="@integer/key_action_enter"
@@ -45,18 +100,6 @@
latin:styleName="enterKeyStyle"
latin:parentStyle="defaultEnterKeyStyle" />
</case>
- <!-- Smiley in textShortMessage field. -->
- <case
- latin:mode="im"
- >
- <key-style
- latin:styleName="enterKeyStyle"
- latin:keyLabel=":-)"
- latin:keyOutputText=":-) "
- latin:keyLabelFlags="hasPopupHint"
- latin:moreKeys="@string/more_keys_for_smiley"
- latin:backgroundType="functional" />
- </case>
<case
latin:imeAction="actionGo"
>
diff --git a/java/res/xml/key_styles_enter_tablet.xml b/java/res/xml/key_styles_enter_tablet.xml
deleted file mode 100644
index 702089181..000000000
--- a/java/res/xml/key_styles_enter_tablet.xml
+++ /dev/null
@@ -1,111 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-**
-** Copyright 2012, 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"
->
- <!-- Enter key style -->
- <key-style
- latin:styleName="defaultEnterKeyStyle"
- latin:code="@integer/key_enter"
- latin:keyIcon="iconReturnKey"
- latin:keyLabelFlags="autoXScale|preserveCase"
- latin:keyActionFlags="noKeyPreview"
- latin:backgroundType="functional" />
- <key-style
- latin:styleName="defaultActionKeyStyle"
- latin:code="@integer/key_action_enter"
- latin:keyIcon="iconUndefined"
- latin:backgroundType="action"
- latin:parentStyle="defaultEnterKeyStyle" />
- <switch>
- <!-- Shift + Enter in textMultiLine field. -->
- <case
- latin:isMultiLine="true"
- latin:keyboardSetElement="alphabetManualShifted|alphabetShiftLockShifted"
- >
- <key-style
- latin:styleName="enterKeyStyle"
- latin:parentStyle="defaultEnterKeyStyle" />
- </case>
- <case
- latin:imeAction="actionGo"
- >
- <key-style
- latin:styleName="enterKeyStyle"
- latin:keyLabel="@string/label_go_key"
- latin:parentStyle="defaultActionKeyStyle" />
- </case>
- <case
- latin:imeAction="actionNext"
- >
- <key-style
- latin:styleName="enterKeyStyle"
- latin:keyLabel="@string/label_next_key"
- latin:parentStyle="defaultActionKeyStyle" />
- </case>
- <case
- latin:imeAction="actionPrevious"
- >
- <key-style
- latin:styleName="enterKeyStyle"
- latin:keyLabel="@string/label_previous_key"
- latin:parentStyle="defaultActionKeyStyle" />
- </case>
- <case
- latin:imeAction="actionDone"
- >
- <key-style
- latin:styleName="enterKeyStyle"
- latin:keyLabel="@string/label_done_key"
- latin:parentStyle="defaultActionKeyStyle" />
- </case>
- <case
- latin:imeAction="actionSend"
- >
- <key-style
- latin:styleName="enterKeyStyle"
- latin:keyLabel="@string/label_send_key"
- latin:parentStyle="defaultActionKeyStyle" />
- </case>
- <case
- latin:imeAction="actionSearch"
- >
- <key-style
- latin:styleName="enterKeyStyle"
- latin:keyIcon="iconSearchKey"
- latin:parentStyle="defaultActionKeyStyle" />
- </case>
- <case
- latin:imeAction="actionCustomLabel"
- >
- <key-style
- latin:styleName="enterKeyStyle"
- latin:keyLabelFlags="fromCustomActionLabel"
- latin:parentStyle="defaultActionKeyStyle" />
- </case>
- <!-- imeAction is either actionNone or actionUnspecified. -->
- <default>
- <key-style
- latin:styleName="enterKeyStyle"
- latin:parentStyle="defaultEnterKeyStyle" />
- </default>
- </switch>
-</merge>
diff --git a/java/res/xml/key_symbols_f1.xml b/java/res/xml/key_symbols_f1.xml
deleted file mode 100644
index ac4031fcc..000000000
--- a/java/res/xml/key_symbols_f1.xml
+++ /dev/null
@@ -1,67 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-**
-** Copyright 2010, 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:navigateAction="false"
- >
- <switch>
- <case
- latin:hasShortcutKey="true"
- >
- <Key
- latin:keyStyle="shortcutKeyStyle" />
- </case>
- <!-- latin:hasShortcutKey="false" -->
- <default>
- <Key
- latin:keyLabel="@string/keylabel_for_comma"
- latin:keyLabelFlags="hasPopupHint"
- latin:additionalMoreKeys="@string/more_keys_for_comma"
- latin:keyStyle="f1PopupStyle" />
- </default>
- </switch>
- </case>
- <!-- navigateAction="true" -->
- <default>
- <switch>
- <case
- latin:hasShortcutKey="true"
- >
- <Key
- latin:keyStyle="shortcutKeyStyle"
- latin:keyWidth="9.2%p" />
- </case>
- <!-- latin:hasShortcutKey="false" -->
- <default>
- <Key
- latin:keyLabel="@string/keylabel_for_comma"
- latin:keyLabelFlags="hasPopupHint"
- latin:additionalMoreKeys="@string/more_keys_for_comma"
- latin:keyStyle="f1PopupStyle"
- latin:keyWidth="9.2%p" />
- </default>
- </switch>
- </default>
- </switch>
-</merge>
diff --git a/java/res/xml/method.xml b/java/res/xml/method.xml
index 650f91b9b..98dc7667e 100644
--- a/java/res/xml/method.xml
+++ b/java/res/xml/method.xml
@@ -21,7 +21,7 @@
<!-- for the Input Method Manager. -->
<!-- Keyboard: en_US, en_GB, ar, be, bg, cs, da, de, de(QWERTY), es, es_US, et, fi, fr, fr_CA,
- fr_CH, hr, hu, it, iw, ky, lt, lv, nb, nl, pl, pt, ro, ru, sk, sl, sr, sv, tr, uk, vi -->
+ fr_CH, hr, hu, it, iw, ka, ky, lt, lv, nb, nl, pl, pt, ro, ru, sk, sl, sr, sv, tr, uk, vi -->
<!-- TODO: use <lang>_keyboard icon instead of a common keyboard icon. -->
<!-- If IME doesn't have an applicable subtype, the first subtype will be used as a default
subtype.-->
@@ -145,6 +145,12 @@
/>
<subtype android:icon="@drawable/ic_subtype_keyboard"
android:label="@string/subtype_generic"
+ android:imeSubtypeLocale="ka"
+ android:imeSubtypeMode="keyboard"
+ android:imeSubtypeExtraValue="SupportTouchPositionCorrection"
+ />
+ <subtype android:icon="@drawable/ic_subtype_keyboard"
+ android:label="@string/subtype_generic"
android:imeSubtypeLocale="ky"
android:imeSubtypeMode="keyboard"
android:imeSubtypeExtraValue="SupportTouchPositionCorrection"
diff --git a/java/res/xml/row_qwerty4.xml b/java/res/xml/row_qwerty4.xml
index 2f8b82c3a..df9c8fe3f 100644
--- a/java/res/xml/row_qwerty4.xml
+++ b/java/res/xml/row_qwerty4.xml
@@ -24,44 +24,46 @@
<Row
latin:keyWidth="10%p"
>
+ <Key
+ latin:keyStyle="toSymbolKeyStyle"
+ latin:keyWidth="15%p" />
<switch>
<case
- latin:navigateAction="false"
+ latin:mode="url"
>
<Key
- latin:keyStyle="toSymbolKeyStyle"
- latin:keyWidth="15%p" />
- <include
- latin:keyboardLayout="@xml/key_f1" />
- <Key
- latin:keyStyle="spaceKeyStyle"
- latin:keyWidth="50%p" />
+ latin:keyLabel="/"
+ latin:keyStyle="f1MoreKeysStyle" />
+ </case>
+ <case
+ latin:mode="email"
+ >
<Key
- latin:keyStyle="punctuationKeyStyle" />
+ latin:keyLabel="\@"
+ latin:keyStyle="f1MoreKeysStyle" />
+ </case>
+ <case
+ latin:hasShortcutKey="true"
+ >
<Key
- latin:keyStyle="enterKeyStyle"
- latin:keyWidth="fillRight" />
+ latin:keyStyle="shortcutKeyStyle" />
</case>
- <!-- TODO: Remove dedicated navigation tab key. -->
- <!-- navigateAction="true" -->
+ <!-- latin:hasShortcutKey="false" -->
<default>
<Key
- latin:keyStyle="toSymbolKeyStyle"
- latin:keyWidth="13.75%p" />
- <include
- latin:keyboardLayout="@xml/key_navigation_tab" />
- <include
- latin:keyboardLayout="@xml/key_f1" />
- <Key
- latin:keyStyle="spaceKeyStyle"
- latin:keyWidth="35.83%p" />
- <Key
- latin:keyStyle="punctuationKeyStyle"
- latin:keyWidth="9.2%p" />
- <Key
- latin:keyStyle="enterKeyStyle"
- latin:keyWidth="fillRight" />
+ latin:keyLabel="@string/keylabel_for_comma"
+ latin:keyLabelFlags="hasPopupHint"
+ latin:additionalMoreKeys="@string/more_keys_for_comma"
+ latin:keyStyle="f1MoreKeysStyle" />
</default>
</switch>
+ <Key
+ latin:keyStyle="spaceKeyStyle"
+ latin:keyWidth="50%p" />
+ <Key
+ latin:keyStyle="punctuationKeyStyle" />
+ <Key
+ latin:keyStyle="enterKeyStyle"
+ latin:keyWidth="fillRight" />
</Row>
</merge>
diff --git a/java/res/xml/row_symbols4.xml b/java/res/xml/row_symbols4.xml
deleted file mode 100644
index ef77bc3cd..000000000
--- a/java/res/xml/row_symbols4.xml
+++ /dev/null
@@ -1,67 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-**
-** Copyright 2010, 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"
->
- <Row
- latin:keyWidth="10%p"
- >
- <switch>
- <case
- latin:navigateAction="false"
- >
- <Key
- latin:keyStyle="toAlphaKeyStyle"
- latin:keyWidth="15%p" />
- <include
- latin:keyboardLayout="@xml/key_symbols_f1" />
- <Key
- latin:keyStyle="spaceKeyStyle"
- latin:keyWidth="50%p" />
- <Key
- latin:keyStyle="punctuationKeyStyle" />
- <Key
- latin:keyStyle="enterKeyStyle"
- latin:keyWidth="fillRight" />
- </case>
- <!-- TODO: Remove dedicated navigation tab key. -->
- <!-- navigateAction="true" -->
- <default>
- <Key
- latin:keyStyle="toAlphaKeyStyle"
- latin:keyWidth="13.75%p" />
- <include
- latin:keyboardLayout="@xml/key_navigation_tab" />
- <include
- latin:keyboardLayout="@xml/key_f1" />
- <Key
- latin:keyStyle="spaceKeyStyle"
- latin:keyWidth="35.83%p" />
- <Key
- latin:keyStyle="punctuationKeyStyle"
- latin:keyWidth="9.2%p" />
- <Key
- latin:keyStyle="enterKeyStyle"
- latin:keyWidth="fillRight" />
- </default>
- </switch>
- </Row>
-</merge>
diff --git a/java/res/xml/row_symbols_shift4.xml b/java/res/xml/row_symbols_shift4.xml
deleted file mode 100644
index 632aafc74..000000000
--- a/java/res/xml/row_symbols_shift4.xml
+++ /dev/null
@@ -1,84 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-**
-** Copyright 2010, 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"
->
- <Row
- latin:keyWidth="10%p"
- >
- <switch>
- <case
- latin:navigateAction="false"
- >
- <Key
- latin:keyStyle="toAlphaKeyStyle"
- latin:keyWidth="15%p" />
- <!-- U+201F: "‟" DOUBLE HIGH-REVERSED-9 QUOTATION MARK -->
- <!-- TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK. -->
- <!-- latin:keyLabelFlags="hasPopupHint" -->
- <!-- latin:moreKeys="&#x201F;" -->
- <!-- U+201E: "„" DOUBLE LOW-9 QUOTATION MARK -->
- <Key
- latin:keyLabel="&#x201E;"
- latin:backgroundType="functional" />
- <Key
- latin:keyStyle="spaceKeyStyle"
- latin:keyWidth="50%p" />
- <!-- U+2026: "…" HORIZONTAL ELLIPSIS -->
- <Key
- latin:keyLabel="&#x2026;"
- latin:backgroundType="functional" />
- <Key
- latin:keyStyle="enterKeyStyle"
- latin:keyWidth="fillRight" />
- </case>
- <!-- TODO: Remove dedicated navigation tab key. -->
- <!-- navigateAction="true" -->
- <default>
- <Key
- latin:keyStyle="toAlphaKeyStyle"
- latin:keyWidth="13.75%p" />
- <include
- latin:keyboardLayout="@xml/key_navigation_tab" />
- <!-- U+201F: "‟" DOUBLE HIGH-REVERSED-9 QUOTATION MARK -->
- <!-- TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK. -->
- <!-- latin:keyLabelFlags="hasPopupHint" -->
- <!-- latin:moreKeys="&#x201F;" -->
- <!-- U+201E: "„" DOUBLE LOW-9 QUOTATION MARK -->
- <Key
- latin:keyLabel="&#x201E;"
- latin:keyWidth="9.2%p"
- latin:backgroundType="functional" />
- <Key
- latin:keyStyle="spaceKeyStyle"
- latin:keyWidth="35.83%p" />
- <!-- U+2026: "…" HORIZONTAL ELLIPSIS -->
- <Key
- latin:keyLabel="&#x2026;"
- latin:keyWidth="9.2%p"
- latin:backgroundType="functional" />
- <Key
- latin:keyStyle="enterKeyStyle"
- latin:keyWidth="fillRight" />
- </default>
- </switch>
- </Row>
-</merge>
diff --git a/java/res/xml/rows_georgian.xml b/java/res/xml/rows_georgian.xml
new file mode 100644
index 000000000..d7d66a34b
--- /dev/null
+++ b/java/res/xml/rows_georgian.xml
@@ -0,0 +1,328 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2012, 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="10%p"
+ >
+ <switch>
+ <case
+ latin:keyboardSetElement="alphabetManualShifted|alphabetShiftLockShifted"
+ >
+ <Key
+ latin:keyLabel="Q"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="1"
+ latin:additionalMoreKeys="1" />
+ <!-- U+10ED: "ჭ" GEORGIAN LETTER CHAR -->
+ <Key
+ latin:keyLabel="&#x10ED;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="2"
+ latin:additionalMoreKeys="2" />
+ <Key
+ latin:keyLabel="E"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="3"
+ latin:additionalMoreKeys="3" />
+ <!-- U+10E6: "ღ" GEORGIAN LETTER GHAN -->
+ <Key
+ latin:keyLabel="&#x10E6;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="4"
+ latin:additionalMoreKeys="4" />
+ <!-- U+10D7: "თ" GEORGIAN LETTER TAN -->
+ <Key
+ latin:keyLabel="&#x10D7;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="5"
+ latin:additionalMoreKeys="5" />
+ <Key
+ latin:keyLabel="Y"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="6"
+ latin:additionalMoreKeys="6" />
+ <Key
+ latin:keyLabel="U"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="7"
+ latin:additionalMoreKeys="7" />
+ <Key
+ latin:keyLabel="I"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="8"
+ latin:additionalMoreKeys="8" />
+ <Key
+ latin:keyLabel="O"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="9"
+ latin:additionalMoreKeys="9" />
+ <Key
+ latin:keyLabel="P"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="0"
+ latin:additionalMoreKeys="0"
+ latin:keyWidth="fillRight" />
+ </case>
+ <default>
+ <!-- U+10E5: "ქ" GEORGIAN LETTER GHAN -->
+ <Key
+ latin:keyLabel="&#x10E5;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="1"
+ latin:additionalMoreKeys="1" />
+ <!-- U+10EC: "წ" GEORGIAN LETTER CIL -->
+ <Key
+ latin:keyLabel="&#x10EC;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="2"
+ latin:additionalMoreKeys="2" />
+ <!-- U+10D4: "ე" GEORGIAN LETTER EN
+ U+10F1: "ჱ" GEORGIAN LETTER HE -->
+ <Key
+ latin:keyLabel="&#x10D4;"
+ latin:moreKeys="&#x10F1;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="3"
+ latin:additionalMoreKeys="3" />
+ <!-- U+10E0: "რ" GEORGIAN LETTER RAE -->
+ <Key
+ latin:keyLabel="&#x10E0;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="4"
+ latin:additionalMoreKeys="4" />
+ <!-- U+10E2: "ტ" GEORGIAN LETTER TAR -->
+ <Key
+ latin:keyLabel="&#x10E2;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="5"
+ latin:additionalMoreKeys="5" />
+ <!-- U+10E7: "ყ" GEORGIAN LETTER QAR
+ U+10F8: "ჸ" GEORGIAN LETTER ELIFI -->
+ <Key
+ latin:keyLabel="&#x10E7;"
+ latin:moreKeys="&#x10F8;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="6"
+ latin:additionalMoreKeys="6" />
+ <!-- U+10E3: "უ" GEORGIAN LETTER UN -->
+ <Key
+ latin:keyLabel="&#x10E3;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="7"
+ latin:additionalMoreKeys="7" />
+ <!-- U+10D8: "ი" GEORGIAN LETTER IN
+ U+10F2: "ჲ" GEORGIAN LETTER HIE -->
+ <Key
+ latin:keyLabel="&#x10D8;"
+ latin:moreKeys="&#x10F2;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="8"
+ latin:additionalMoreKeys="8" />
+ <!-- U+10DD: "ო" GEORGIAN LETTER ON -->
+ <Key
+ latin:keyLabel="&#x10DD;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="9"
+ latin:additionalMoreKeys="9" />
+ <!-- U+10DE: "პ" GEORGIAN LETTER PAR -->
+ <Key
+ latin:keyLabel="&#x10DE;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyHintLabel="0"
+ latin:additionalMoreKeys="0"
+ latin:keyWidth="fillRight" />
+ </default>
+ </switch>
+ </Row>
+ <Row
+ latin:keyWidth="10%p"
+ >
+ <switch>
+ <case
+ latin:keyboardSetElement="alphabetManualShifted|alphabetShiftLockShifted"
+ >
+ <Key
+ latin:keyLabel="A"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyXPos="5%p" />
+ <!-- U+10E8: "შ" GEORGIAN LETTER SHIN -->
+ <Key
+ latin:keyLabel="&#x10E8;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="D"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="F"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="G"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="H"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DF: "ჟ" GEORGIAN LETTER ZHAR -->
+ <Key
+ latin:keyLabel="&#x10DF;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="K"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="L"
+ latin:keyLabelFlags="preserveCase" />
+ </case>
+ <default>
+ <!-- U+10D0: "ა" GEORGIAN LETTER AN
+ U+10FA: "ჺ" GEORGIAN LETTER AIN -->
+ <Key
+ latin:keyLabel="&#x10D0;"
+ latin:moreKeys="&#x10FA;"
+ latin:keyLabelFlags="preserveCase"
+ latin:keyXPos="5%p" />
+ <!-- U+10E1: "ს" GEORGIAN LETTER SAN -->
+ <Key
+ latin:keyLabel="&#x10E1;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D3: "დ" GEORGIAN LETTER DON -->
+ <Key
+ latin:keyLabel="&#x10D3;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E4: "ფ" GEORGIAN LETTER PHAR
+ U+10F6: "ჶ" GEORGIAN LETTER FI -->
+ <Key
+ latin:keyLabel="&#x10E4;"
+ latin:moreKeys="&#x10F6;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D2: "გ" GEORGIAN LETTER GAN
+ U+10F9: "ჹ" GEORGIAN LETTER TURNED GAN -->
+ <Key
+ latin:keyLabel="&#x10D2;"
+ latin:moreKeys="&#x10F9;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10F0: "ჰ" GEORGIAN LETTER HAE
+ U+10F5: "ჵ" GEORGIAN LETTER HOE -->
+ <Key
+ latin:keyLabel="&#x10F0;"
+ latin:moreKeys="&#x10F5;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10EF: "ჯ" GEORGIAN LETTER JHAN
+ U+10F7: "ჷ" GEORGIAN LETTER YN -->
+ <Key
+ latin:keyLabel="&#x10EF;"
+ latin:moreKeys="&#x10F7;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D9: "კ" GEORGIAN LETTER KAN -->
+ <Key
+ latin:keyLabel="&#x10D9;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DA: "ლ" GEORGIAN LETTER LAS -->
+ <Key
+ latin:keyLabel="&#x10DA;"
+ latin:keyLabelFlags="preserveCase" />
+ </default>
+ </switch>
+ <!-- Here is 5%p space -->
+ </Row>
+ <Row
+ latin:keyWidth="10%p"
+ >
+ <Key
+ latin:keyStyle="shiftKeyStyle"
+ latin:keyWidth="15%p"
+ latin:visualInsetsRight="1%p" />
+ <switch>
+ <case
+ latin:keyboardSetElement="alphabetManualShifted|alphabetShiftLockShifted"
+ >
+ <!-- U+10EB: "ძ" GEORGIAN LETTER JIL -->
+ <Key
+ latin:keyLabel="&#x10EB;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="X"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10E9: "ჩ" GEORGIAN LETTER CHIN -->
+ <Key
+ latin:keyLabel="&#x10E9;"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="V"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="B"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="N"
+ latin:keyLabelFlags="preserveCase" />
+ <Key
+ latin:keyLabel="M"
+ latin:keyLabelFlags="preserveCase" />
+ </case>
+ <default>
+ <!-- U+10D6: "ზ" GEORGIAN LETTER ZEN -->
+ <Key
+ latin:keyLabel="&#x10D6;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10EE: "ხ" GEORGIAN LETTER XAN
+ U+10F4: "ჴ" GEORGIAN LETTER HAR -->
+ <Key
+ latin:keyLabel="&#x10EE;"
+ latin:moreKeys="&#x10F4;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10EA: "ც" GEORGIAN LETTER CAN -->
+ <Key
+ latin:keyLabel="&#x10EA;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D5: "ვ" GEORGIAN LETTER VIN
+ U+10F3: "ჳ" GEORGIAN LETTER WE -->
+ <Key
+ latin:keyLabel="&#x10D5;"
+ latin:moreKeys="&#x10F3;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10D1: "ბ" GEORGIAN LETTER BAN -->
+ <Key
+ latin:keyLabel="&#x10D1;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DC: "ნ" GEORGIAN LETTER NAR
+ U+10FC: "ჼ" MODIFIER LETTER GEORGIAN NAR -->
+ <Key
+ latin:keyLabel="&#x10DC;"
+ latin:moreKeys="&#x10FC;"
+ latin:keyLabelFlags="preserveCase" />
+ <!-- U+10DB: "მ" GEORGIAN LETTER MAN -->
+ <Key
+ latin:keyLabel="&#x10DB;"
+ latin:keyLabelFlags="preserveCase" />
+ </default>
+ </switch>
+ <Key
+ latin:keyStyle="deleteKeyStyle"
+ latin:keyWidth="fillBoth"
+ latin:visualInsetsLeft="1%p" />
+ </Row>
+ <include
+ latin:keyboardLayout="@xml/row_qwerty4" />
+</merge>
diff --git a/java/res/xml/rows_symbols.xml b/java/res/xml/rows_symbols.xml
index 27f75b564..21f7d1d27 100644
--- a/java/res/xml/rows_symbols.xml
+++ b/java/res/xml/rows_symbols.xml
@@ -128,6 +128,35 @@
latin:keyWidth="fillRight"
latin:visualInsetsLeft="1%p" />
</Row>
- <include
- latin:keyboardLayout="@xml/row_symbols4" />
+ <Row
+ latin:keyWidth="10%p"
+ >
+ <Key
+ latin:keyStyle="toAlphaKeyStyle"
+ latin:keyWidth="15%p" />
+ <switch>
+ <case
+ latin:hasShortcutKey="true"
+ >
+ <Key
+ latin:keyStyle="shortcutKeyStyle" />
+ </case>
+ <!-- latin:hasShortcutKey="false" -->
+ <default>
+ <Key
+ latin:keyLabel="@string/keylabel_for_comma"
+ latin:keyLabelFlags="hasPopupHint"
+ latin:additionalMoreKeys="@string/more_keys_for_comma"
+ latin:keyStyle="f1MoreKeysStyle" />
+ </default>
+ </switch>
+ <Key
+ latin:keyStyle="spaceKeyStyle"
+ latin:keyWidth="50%p" />
+ <Key
+ latin:keyStyle="punctuationKeyStyle" />
+ <Key
+ latin:keyStyle="enterKeyStyle"
+ latin:keyWidth="fillRight" />
+ </Row>
</merge>
diff --git a/java/res/xml/rows_symbols_shift.xml b/java/res/xml/rows_symbols_shift.xml
index 3fb821486..a7d0499e1 100644
--- a/java/res/xml/rows_symbols_shift.xml
+++ b/java/res/xml/rows_symbols_shift.xml
@@ -119,6 +119,29 @@
latin:keyWidth="fillRight"
latin:visualInsetsLeft="1%p" />
</Row>
- <include
- latin:keyboardLayout="@xml/row_symbols_shift4" />
+ <Row
+ latin:keyWidth="10%p"
+ >
+ <Key
+ latin:keyStyle="toAlphaKeyStyle"
+ latin:keyWidth="15%p" />
+ <!-- U+201F: "‟" DOUBLE HIGH-REVERSED-9 QUOTATION MARK -->
+ <!-- TODO: Neither DroidSans nor Roboto have the glyph for U+201F DOUBLE HIGH-REVERSED-9 QUOTATION MARK. -->
+ <!-- latin:keyLabelFlags="hasPopupHint" -->
+ <!-- latin:moreKeys="&#x201F;" -->
+ <!-- U+201E: "„" DOUBLE LOW-9 QUOTATION MARK -->
+ <Key
+ latin:keyLabel="&#x201E;"
+ latin:backgroundType="functional" />
+ <Key
+ latin:keyStyle="spaceKeyStyle"
+ latin:keyWidth="50%p" />
+ <!-- U+2026: "…" HORIZONTAL ELLIPSIS -->
+ <Key
+ latin:keyLabel="&#x2026;"
+ latin:backgroundType="functional" />
+ <Key
+ latin:keyStyle="enterKeyStyle"
+ latin:keyWidth="fillRight" />
+ </Row>
</merge>