From 254c5c1e4baaf9b4dc8917f14e63dfa3f713f9fa Mon Sep 17 00:00:00 2001
From: "Tadashi G. Takaoka" <takaoka@google.com>
Date: Sat, 19 Jul 2014 16:43:35 -0700
Subject: [PATCH] Update Hindi Compact keyboard layout

Bug: 13779052
Change-Id: I350e5521b41d2a0b1cc17b6d4a48e6a816db916c
---
 java/res/xml-v16/keystyle_devanagari_sign_virama.xml      | 7 ++++++-
 java/res/xml/keystyle_devanagari_sign_virama.xml          | 8 +++++++-
 java/res/xml/rowkeys_hindi_compact2.xml                   | 2 +-
 java/res/xml/rowkeys_hindi_compact3.xml                   | 7 ++-----
 .../android/inputmethod/keyboard/layout/HindiCompact.java | 6 ++++--
 5 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/java/res/xml-v16/keystyle_devanagari_sign_virama.xml b/java/res/xml-v16/keystyle_devanagari_sign_virama.xml
index 0300e4a8b2..e28ad53b36 100644
--- a/java/res/xml-v16/keystyle_devanagari_sign_virama.xml
+++ b/java/res/xml-v16/keystyle_devanagari_sign_virama.xml
@@ -27,8 +27,13 @@
         <case latin:keyboardLayoutSet="hindi_compact">
             <!-- U+094D: "्" DEVANAGARI SIGN VIRAMA -->
             <key-style
-                latin:styleName="moreKeysDevanagariSignVirama"
+                latin:styleName="moreKeySpecDevanagariSignVirama"
                 latin:moreKeys="&#x094D;" />
+            <!-- U+0945: "ॅ" DEVANAGARI VOWEL SIGN CANDRA E
+                 U+090D: "ऍ" DEVANAGARI LETTER CANDRA E -->
+            <key-style
+                latin:styleName="moreKeysDevanagariSignVirama"
+                latin:moreKeys="&#x0945;,&#x090D;" />
         </case>
         <case latin:keyboardLayoutSet="marathi">
             <!-- U+0905: "अ" DEVANAGARI LETTER A -->
diff --git a/java/res/xml/keystyle_devanagari_sign_virama.xml b/java/res/xml/keystyle_devanagari_sign_virama.xml
index a7c5998eff..ff778d94ca 100644
--- a/java/res/xml/keystyle_devanagari_sign_virama.xml
+++ b/java/res/xml/keystyle_devanagari_sign_virama.xml
@@ -28,8 +28,14 @@
             <!-- U+25CC: "◌" DOTTED CIRCLE
                  U+094D: "्" DEVANAGARI SIGN VIRAMA -->
             <key-style
-                latin:styleName="moreKeysDevanagariSignVirama"
+                latin:styleName="moreKeySpecDevanagariSignVirama"
                 latin:moreKeys="&#x25CC;&#x094D;|&#x094D;" />
+            <!-- U+25CC: "◌" DOTTED CIRCLE
+                 U+0945: "ॅ" DEVANAGARI VOWEL SIGN CANDRA E
+                 U+090D: "ऍ" DEVANAGARI LETTER CANDRA E -->
+            <key-style
+                latin:styleName="moreKeysDevanagariSignVirama"
+                latin:moreKeys="&#x25CC;&#x0945;,&#x090D;" />
         </case>
         <case latin:keyboardLayoutSet="marathi">
             <!-- U+0905: "अ" DEVANAGARI LETTER A -->
diff --git a/java/res/xml/rowkeys_hindi_compact2.xml b/java/res/xml/rowkeys_hindi_compact2.xml
index 7cbe5efbbe..94aaaf2f3d 100644
--- a/java/res/xml/rowkeys_hindi_compact2.xml
+++ b/java/res/xml/rowkeys_hindi_compact2.xml
@@ -42,7 +42,7 @@
     <!-- U+0905: "अ" DEVANAGARI LETTER A -->
     <Key
         latin:keySpec="&#x0905;"
-        latin:keyStyle="moreKeysDevanagariSignVirama" />
+        latin:keyStyle="moreKeySpecDevanagariSignVirama" />
     <!-- Because the font rendering system prior to API version 16 can't automatically
          render dotted circle for incomplete combining letter of some scripts, different
          set of Key definitions are needed based on the API version. -->
diff --git a/java/res/xml/rowkeys_hindi_compact3.xml b/java/res/xml/rowkeys_hindi_compact3.xml
index 89a9f9d60d..394eb23e77 100644
--- a/java/res/xml/rowkeys_hindi_compact3.xml
+++ b/java/res/xml/rowkeys_hindi_compact3.xml
@@ -30,11 +30,8 @@
     <!-- Because the font rendering system prior to API version 16 can't automatically
          render dotted circle for incomplete combining letter of some scripts, different
          set of Key definitions are needed based on the API version. -->
-    <include latin:keyboardLayout="@xml/keystyle_devanagari_vowel_sign_candra_e" />
-    <!-- U+090D: "ऍ" DEVANAGARI LETTER CANDRA E -->
-    <Key
-        latin:keySpec="&#x090D;"
-        latin:keyStyle="moreKeysDevanagariVowelSignCandraE" />
+    <include latin:keyboardLayout="@xml/keystyle_devanagari_sign_virama" />
+    <Key latin:keyStyle="baseKeyDevanagariSignVirama" />
     <!-- Because the font rendering system prior to API version 16 can't automatically
          render dotted circle for incomplete combining letter of some scripts, different
          set of Key definitions are needed based on the API version. -->
diff --git a/tests/src/com/android/inputmethod/keyboard/layout/HindiCompact.java b/tests/src/com/android/inputmethod/keyboard/layout/HindiCompact.java
index a7f6823403..2b625c32b0 100644
--- a/tests/src/com/android/inputmethod/keyboard/layout/HindiCompact.java
+++ b/tests/src/com/android/inputmethod/keyboard/layout/HindiCompact.java
@@ -163,9 +163,11 @@ public final class HindiCompact extends LayoutBase {
                     // U+0911: "ऑ" DEVANAGARI LETTER CANDRA O
                     // U+0949: "ॉ" DEVANAGARI VOWEL SIGN CANDRA O
                     key("\u0911", moreKey(VOWEL_SIGN_CANDRA_O, "\u0949")),
-                    // U+090D: "ऍ" DEVANAGARI LETTER CANDRA E
+                    // U+094D: "्" DEVANAGARI SIGN VIRAMA
                     // U+0945: "ॅ" DEVANAGARI VOWEL SIGN CANDRA E
-                    key("\u090D", moreKey(VOWEL_SIGN_CANDRA_E, "\u0945")),
+                    // U+090D: "ऍ" DEVANAGARI LETTER CANDRA E
+                    key(SIGN_VIRAMA, "\u094D", joinMoreKeys(
+                            moreKey(VOWEL_SIGN_CANDRA_E, "\u0945"), "\u090D")),
                     // U+0902: "ं" DEVANAGARI SIGN ANUSVARA
                     // U+0903: "ः‍" DEVANAGARI SIGN VISARGA
                     // U+0901: "ँ" DEVANAGARI SIGN CANDRABINDU
-- 
GitLab