Add digit alternates

This also re-orders keyboard layout attribute and adds some
android:popupCharacters.

Bug: 2973749
Change-Id: I300fb4029a1844947731cb98a464d8d754cb03ef
diff --git a/java/res/xml-de/kbd_qwerty.xml b/java/res/xml-de/kbd_qwerty.xml
index f03683c..d569057 100644
--- a/java/res/xml-de/kbd_qwerty.xml
+++ b/java/res/xml-de/kbd_qwerty.xml
@@ -28,19 +28,29 @@
     <Row>
         <Key
             android:keyLabel="q"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_q"
             android:keyEdgeFlags="left" />
         <Key
-            android:keyLabel="w" />
+            android:keyLabel="w"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_w" />
         <Key
             android:keyLabel="e"
             android:popupKeyboard="@xml/kbd_popup_template"
             android:popupCharacters="@string/alternates_for_e" />
         <Key
-            android:keyLabel="r" />
+            android:keyLabel="r"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_r" />
         <Key
-            android:keyLabel="t" />
+            android:keyLabel="t"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_t" />
         <Key
-            android:keyLabel="z" />
+            android:keyLabel="z"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_z" />
         <Key
             android:keyLabel="u"
             android:popupKeyboard="@xml/kbd_popup_template"
@@ -55,25 +65,31 @@
             android:popupCharacters="@string/alternates_for_o" />
         <Key
             android:keyLabel="p"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_p"
             android:keyEdgeFlags="right" />
     </Row>
     <Row>
         <Key
             android:keyLabel="a"
-            android:horizontalGap="5%p"
             android:popupKeyboard="@xml/kbd_popup_template"
             android:popupCharacters="@string/alternates_for_a"
+            android:horizontalGap="5%p"
             android:keyEdgeFlags="left" />
         <Key
             android:keyLabel="s"
             android:popupKeyboard="@xml/kbd_popup_template"
             android:popupCharacters="@string/alternates_for_s" />
         <Key
-            android:keyLabel="d" />
+            android:keyLabel="d"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_d" />
         <Key
             android:keyLabel="f" />
         <Key
-            android:keyLabel="g" />
+            android:keyLabel="g"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_g" />
         <Key
             android:keyLabel="h" />
         <Key
@@ -82,15 +98,17 @@
             android:keyLabel="k" />
         <Key
             android:keyLabel="l"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_l"
             android:keyEdgeFlags="right" />
     </Row>
     <Row>
         <Key
             android:codes="@integer/key_shift"
             android:keyIcon="@drawable/sym_keyboard_shift"
+            android:iconPreview="@drawable/sym_keyboard_feedback_shift"
             android:keyWidth="15%p"
             android:isModifier="true"
-            android:iconPreview="@drawable/sym_keyboard_feedback_shift"
             android:isSticky="true"
             android:keyEdgeFlags="left" />
         <Key
@@ -104,7 +122,9 @@
             android:popupKeyboard="@xml/kbd_popup_template"
             android:popupCharacters="@string/alternates_for_c" />
         <Key
-            android:keyLabel="v" />
+            android:keyLabel="v"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_v" />
         <Key
             android:keyLabel="b" />
         <Key
@@ -116,11 +136,11 @@
         <Key
             android:codes="@integer/key_delete"
             android:keyIcon="@drawable/sym_keyboard_delete"
-            android:keyWidth="15%p"
-            android:keyEdgeFlags="right"
             android:iconPreview="@drawable/sym_keyboard_feedback_delete"
+            android:keyWidth="15%p"
+            android:isModifier="true"
             android:isRepeatable="true"
-            android:isModifier="true" />
+            android:keyEdgeFlags="right" />
     </Row>
     <Row
         android:keyboardMode="@+id/mode_normal"
@@ -130,8 +150,8 @@
             android:codes="@integer/key_symbol"
             android:keyLabel="@string/label_symbol_key"
             android:keyWidth="15%p"
-            android:keyEdgeFlags="left"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:keyEdgeFlags="left" />
         <Key
             android:codes="@integer/key_settings"
             android:keyIcon="@drawable/sym_keyboard_settings"
@@ -149,8 +169,8 @@
             android:keyIcon="@drawable/sym_keyboard_space"
             android:iconPreview="@drawable/sym_keyboard_feedback_space"
             android:keyWidth="30%p"
-            android:isRepeatable="true"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:isRepeatable="true" />
         <Key
             android:keyLabel="."
             android:popupKeyboard="@xml/popup_punctuation"
@@ -161,8 +181,8 @@
             android:keyIcon="@drawable/sym_keyboard_return"
             android:iconPreview="@drawable/sym_keyboard_feedback_return"
             android:keyWidth="25%p"
-            android:keyEdgeFlags="right"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:keyEdgeFlags="right" />
     </Row>
     <Row
         android:keyboardMode="@+id/mode_url"
@@ -172,8 +192,8 @@
             android:codes="@integer/key_symbol"
             android:keyLabel="@string/label_symbol_key"
             android:keyWidth="15%p"
-            android:keyEdgeFlags="left"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:keyEdgeFlags="left" />
         <Key
             android:codes="@integer/key_settings"
             android:keyIcon="@drawable/sym_keyboard_settings"
@@ -189,8 +209,8 @@
             android:keyIcon="@drawable/sym_keyboard_space"
             android:iconPreview="@drawable/sym_keyboard_feedback_space"
             android:keyWidth="30%p"
-            android:isRepeatable="true"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:isRepeatable="true" />
         <Key
             android:keyLabel="."
             android:popupKeyboard="@xml/popup_punctuation"
@@ -201,8 +221,8 @@
             android:keyIcon="@drawable/sym_keyboard_return"
             android:iconPreview="@drawable/sym_keyboard_feedback_return"
             android:keyWidth="25%p"
-            android:keyEdgeFlags="right"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:keyEdgeFlags="right" />
     </Row>
     <Row
         android:keyboardMode="@+id/mode_email"
@@ -212,8 +232,8 @@
             android:codes="@integer/key_symbol"
             android:keyLabel="@string/label_symbol_key"
             android:keyWidth="15%p"
-            android:keyEdgeFlags="left"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:keyEdgeFlags="left" />
         <Key
             android:codes="@integer/key_settings"
             android:keyIcon="@drawable/sym_keyboard_settings"
@@ -228,8 +248,8 @@
             android:keyIcon="@drawable/sym_keyboard_space"
             android:iconPreview="@drawable/sym_keyboard_feedback_space"
             android:keyWidth="30%p"
-            android:isRepeatable="true"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:isRepeatable="true" />
         <Key
             android:keyLabel="."
             android:popupKeyboard="@xml/popup_punctuation"
@@ -239,8 +259,8 @@
             android:keyIcon="@drawable/sym_keyboard_return"
             android:iconPreview="@drawable/sym_keyboard_feedback_return"
             android:keyWidth="25%p"
-            android:keyEdgeFlags="right"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:keyEdgeFlags="right" />
     </Row>
     <Row
         android:keyboardMode="@+id/mode_im"
@@ -250,8 +270,8 @@
             android:codes="@integer/key_symbol"
             android:keyLabel="@string/label_symbol_key"
             android:keyWidth="15%p"
-            android:keyEdgeFlags="left"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:keyEdgeFlags="left" />
         <Key
             android:codes="@integer/key_settings"
             android:keyIcon="@drawable/sym_keyboard_settings"
@@ -269,8 +289,8 @@
             android:keyIcon="@drawable/sym_keyboard_space"
             android:iconPreview="@drawable/sym_keyboard_feedback_space"
             android:keyWidth="30%p"
-            android:isRepeatable="true"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:isRepeatable="true" />
         <Key
             android:keyLabel="."
             android:popupKeyboard="@xml/popup_punctuation"
@@ -281,8 +301,8 @@
             android:keyOutputText=":-) "
             android:popupKeyboard="@xml/popup_smileys"
             android:keyWidth="25%p"
-            android:keyEdgeFlags="right"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:keyEdgeFlags="right" />
     </Row>
     <Row
         android:keyboardMode="@+id/mode_webentry"
@@ -292,8 +312,8 @@
             android:codes="@integer/key_symbol"
             android:keyLabel="@string/label_symbol_key"
             android:keyWidth="15%p"
-            android:keyEdgeFlags="left"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:keyEdgeFlags="left" />
         <Key
             android:codes="@integer/key_settings"
             android:keyIcon="@drawable/sym_keyboard_settings"
@@ -311,9 +331,10 @@
             android:keyIcon="@drawable/sym_keyboard_space"
             android:iconPreview="@drawable/sym_keyboard_feedback_space"
             android:keyWidth="30%p"
-            android:isRepeatable="true"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:isRepeatable="true" />
         <Key
+            android:codes="@integer/key_tab"
             android:keyIcon="@drawable/sym_keyboard_tab"
             android:iconPreview="@drawable/sym_keyboard_feedback_tab"
             android:keyWidth="10%p"
@@ -328,7 +349,7 @@
             android:keyIcon="@drawable/sym_keyboard_return"
             android:iconPreview="@drawable/sym_keyboard_feedback_return"
             android:keyWidth="15%p"
-            android:keyEdgeFlags="right"
-            android:isModifier="true" />
+            android:isModifier="true"
+            android:keyEdgeFlags="right" />
     </Row>
 </Keyboard>
diff --git a/java/res/xml-de/kbd_qwerty_black.xml b/java/res/xml-de/kbd_qwerty_black.xml
index 29cb2d1..791aa02 100644
--- a/java/res/xml-de/kbd_qwerty_black.xml
+++ b/java/res/xml-de/kbd_qwerty_black.xml
@@ -28,19 +28,29 @@
     <Row>
         <Key
             android:keyLabel="q"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_q"
             android:keyEdgeFlags="left" />
         <Key
-            android:keyLabel="w" />
+            android:keyLabel="w"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_w" />
         <Key
             android:keyLabel="e"
             android:popupKeyboard="@xml/kbd_popup_template"
             android:popupCharacters="@string/alternates_for_e" />
         <Key
-            android:keyLabel="r" />
+            android:keyLabel="r"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_r" />
         <Key
-            android:keyLabel="t" />
+            android:keyLabel="t"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_t" />
         <Key
-            android:keyLabel="z" />
+            android:keyLabel="z"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_z" />
         <Key
             android:keyLabel="u"
             android:popupKeyboard="@xml/kbd_popup_template"
@@ -55,25 +65,31 @@
             android:popupCharacters="@string/alternates_for_o" />
         <Key
             android:keyLabel="p"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_p"
             android:keyEdgeFlags="right" />
     </Row>
     <Row>
         <Key
             android:keyLabel="a"
-            android:horizontalGap="5%p"
             android:popupKeyboard="@xml/kbd_popup_template"
             android:popupCharacters="@string/alternates_for_a"
+            android:horizontalGap="5%p"
             android:keyEdgeFlags="left" />
         <Key
             android:keyLabel="s"
             android:popupKeyboard="@xml/kbd_popup_template"
             android:popupCharacters="@string/alternates_for_s" />
         <Key
-            android:keyLabel="d" />
+            android:keyLabel="d"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_d" />
         <Key
             android:keyLabel="f" />
         <Key
-            android:keyLabel="g" />
+            android:keyLabel="g"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_g" />
         <Key
             android:keyLabel="h" />
         <Key
@@ -82,15 +98,17 @@
             android:keyLabel="k" />
         <Key
             android:keyLabel="l"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_l"
             android:keyEdgeFlags="right" />
     </Row>
     <Row>
         <Key
             android:codes="@integer/key_shift"
             android:keyIcon="@drawable/sym_bkeyboard_shift"
+            android:iconPreview="@drawable/sym_keyboard_feedback_shift"
             android:keyWidth="15%p"
             android:isModifier="true"
-            android:iconPreview="@drawable/sym_keyboard_feedback_shift"
             android:isSticky="true"
             android:keyEdgeFlags="left" />
         <Key
@@ -104,7 +122,9 @@
             android:popupKeyboard="@xml/kbd_popup_template"
             android:popupCharacters="@string/alternates_for_c" />
         <Key
-            android:keyLabel="v" />
+            android:keyLabel="v"
+            android:popupKeyboard="@xml/kbd_popup_template"
+            android:popupCharacters="@string/alternates_for_v" />
         <Key
             android:keyLabel="b" />
         <Key
@@ -116,10 +136,10 @@
         <Key
             android:codes="@integer/key_delete"
             android:keyIcon="@drawable/sym_bkeyboard_delete"
-            android:keyWidth="15%p"
-            android:keyEdgeFlags="right"
             android:iconPreview="@drawable/sym_keyboard_feedback_delete"
-            android:isRepeatable="true" />
+            android:keyWidth="15%p"
+            android:isRepeatable="true"
+            android:keyEdgeFlags="right" />
     </Row>
     <Row
         android:keyboardMode="@+id/mode_normal"
@@ -285,6 +305,7 @@
             android:keyWidth="30%p"
             android:isRepeatable="true" />
         <Key
+            android:codes="@integer/key_tab"
             android:keyIcon="@drawable/sym_bkeyboard_tab"
             android:iconPreview="@drawable/sym_keyboard_feedback_tab"
             android:keyWidth="10%p" />