Cleanup <include/> and etc. in keyboard XML

* Remove keyXPos and keyWidth from key_*.xml and make it more generic.
* Add keyXPos and keyWidth to <include/> generalized key_*.xml.
* Remove zero width <Spacer/> and fold into successive <include/>.

Change-Id: I4b5c02a165ba0bc9ef8741be0b4938c1efaf5e27
diff --git a/java/res/xml-sw768dp/key_shortcut.xml b/java/res/xml-sw768dp/key_shortcut.xml
index 1e367a9..9052705 100644
--- a/java/res/xml-sw768dp/key_shortcut.xml
+++ b/java/res/xml-sw768dp/key_shortcut.xml
@@ -26,9 +26,7 @@
             latin:shortcutKeyEnabled="true"
         >
             <Key
-                latin:keyStyle="shortcutKeyStyle"
-                latin:keyXPos="-8.047%p"
-                latin:keyWidth="fillRight" />
+                latin:keyStyle="shortcutKeyStyle" />
         </case>
     </switch>
 </merge>
diff --git a/java/res/xml-sw768dp/key_space.xml b/java/res/xml-sw768dp/key_space.xml
index f4d0480..36326c4 100644
--- a/java/res/xml-sw768dp/key_space.xml
+++ b/java/res/xml-sw768dp/key_space.xml
@@ -21,9 +21,6 @@
 <merge
     xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
 >
-    <Spacer
-        latin:keyWidth="0dp"
-        latin:keyXPos="31.250%p" />
     <switch>
         <case
             latin:languageCode="fa"
diff --git a/java/res/xml-sw768dp/row_dvorak4.xml b/java/res/xml-sw768dp/row_dvorak4.xml
index f95661f..251b4f5 100644
--- a/java/res/xml-sw768dp/row_dvorak4.xml
+++ b/java/res/xml-sw768dp/row_dvorak4.xml
@@ -26,18 +26,19 @@
     >
         <include
             latin:keyboardLayout="@xml/key_settings" />
-        <Spacer
-            latin:keyXPos="15.157%p"
-            latin:keyWidth="0%p" />
         <include
+            latin:keyXPos="15.157%p"
             latin:keyboardLayout="@xml/keys_f1f2" />
         <include
+            latin:keyXPos="31.250%p"
             latin:keyboardLayout="@xml/key_space" />
         <include
             latin:keyboardLayout="@xml/key_question_exclamation" />
         <include
             latin:keyboardLayout="@xml/key_dash" />
         <include
+            latin:keyXPos="-8.047%p"
+            latin:keyWidth="fillRight"
             latin:keyboardLayout="@xml/key_shortcut" />
     </Row>
 </merge>
diff --git a/java/res/xml-sw768dp/row_hebrew4.xml b/java/res/xml-sw768dp/row_hebrew4.xml
index e95d5fb..8ec7ea7 100644
--- a/java/res/xml-sw768dp/row_hebrew4.xml
+++ b/java/res/xml-sw768dp/row_hebrew4.xml
@@ -26,16 +26,16 @@
     >
         <include
             latin:keyboardLayout="@xml/key_settings" />
-        <Spacer
-            latin:keyXPos="15.157%p"
-            latin:keyWidth="0%p" />
         <include
+            latin:keyXPos="15.157%p"
             latin:keyboardLayout="@xml/keys_f1f2" />
         <include
             latin:keyboardLayout="@xml/key_space" />
         <include
             latin:keyboardLayout="@xml/keys_comma_period" />
         <include
+            latin:keyXPos="-8.047%p"
+            latin:keyWidth="fillRight"
             latin:keyboardLayout="@xml/key_shortcut" />
     </Row>
 </merge>
diff --git a/java/res/xml-sw768dp/row_qwerty4.xml b/java/res/xml-sw768dp/row_qwerty4.xml
index b902d03..0cf964f 100644
--- a/java/res/xml-sw768dp/row_qwerty4.xml
+++ b/java/res/xml-sw768dp/row_qwerty4.xml
@@ -26,18 +26,19 @@
     >
         <include
             latin:keyboardLayout="@xml/key_settings" />
-        <Spacer
-            latin:keyXPos="15.157%p"
-            latin:keyWidth="0%p" />
         <include
+            latin:keyXPos="15.157%p"
             latin:keyboardLayout="@xml/keys_f1f2" />
         <include
+            latin:keyXPos="31.250%p"
             latin:keyboardLayout="@xml/key_space" />
         <include
             latin:keyboardLayout="@xml/key_apostrophe" />
         <include
             latin:keyboardLayout="@xml/key_dash" />
         <include
+            latin:keyXPos="-8.047%p"
+            latin:keyWidth="fillRight"
             latin:keyboardLayout="@xml/key_shortcut" />
     </Row>
 </merge>
diff --git a/java/res/xml-sw768dp/row_symbols4.xml b/java/res/xml-sw768dp/row_symbols4.xml
index 29845aa..167fc5e 100644
--- a/java/res/xml-sw768dp/row_symbols4.xml
+++ b/java/res/xml-sw768dp/row_symbols4.xml
@@ -32,21 +32,16 @@
         <Key
             latin:keyLabel="\@" />
         <include
+            latin:keyXPos="31.250%p"
             latin:keyboardLayout="@xml/key_space" />
         <Key
             latin:keyLabel="&quot;"
             latin:moreKeys="!text/more_keys_for_tablet_double_quote" />
         <Key
             latin:keyLabel="_" />
-        <switch>
-            <case
-                latin:shortcutKeyEnabled="true"
-            >
-                <Key
-                    latin:keyStyle="shortcutKeyStyle"
-                    latin:keyXPos="-8.047%p"
-                    latin:keyWidth="fillRight" />
-            </case>
-        </switch>
+        <include
+            latin:keyXPos="-8.047%p"
+            latin:keyWidth="fillRight"
+            latin:keyboardLayout="@xml/key_shortcut" />
     </Row>
 </merge>
diff --git a/java/res/xml-sw768dp/row_symbols_shift4.xml b/java/res/xml-sw768dp/row_symbols_shift4.xml
index 6828fdb..683ec43 100644
--- a/java/res/xml-sw768dp/row_symbols_shift4.xml
+++ b/java/res/xml-sw768dp/row_symbols_shift4.xml
@@ -27,16 +27,11 @@
         <include
             latin:keyboardLayout="@xml/key_settings" />
         <include
+            latin:keyXPos="31.250%p"
             latin:keyboardLayout="@xml/key_space" />
-        <switch>
-            <case
-                latin:shortcutKeyEnabled="true"
-            >
-                <Key
-                    latin:keyStyle="shortcutKeyStyle"
-                    latin:keyXPos="-8.047%p"
-                    latin:keyWidth="fillRight" />
-            </case>
-        </switch>
+        <include
+            latin:keyXPos="-8.047%p"
+            latin:keyWidth="fillRight"
+            latin:keyboardLayout="@xml/key_shortcut" />
     </Row>
 </merge>
diff --git a/java/res/xml-sw768dp/rows_colemak.xml b/java/res/xml-sw768dp/rows_colemak.xml
index e004480..01ebead 100644
--- a/java/res/xml-sw768dp/rows_colemak.xml
+++ b/java/res/xml-sw768dp/rows_colemak.xml
@@ -34,7 +34,7 @@
             latin:keyboardLayout="@xml/rowkeys_colemak1"
             latin:keyLabelFlags="disableAdditionalMoreKeys|disableKeyHintLabel" />
         <include
-            latin:keyboardLayout="@xml/key_colemak_semicolon" />
+            latin:keyboardLayout="@xml/key_colemak_colon" />
         <Key
             latin:keyStyle="deleteKeyStyle"
             latin:keyWidth="fillBoth" />
diff --git a/java/res/xml-sw768dp/rows_number_normal.xml b/java/res/xml-sw768dp/rows_number_normal.xml
index 0d75a37..42697ce 100644
--- a/java/res/xml-sw768dp/rows_number_normal.xml
+++ b/java/res/xml-sw768dp/rows_number_normal.xml
@@ -137,8 +137,7 @@
             latin:keyLabel="9"
             latin:keyStyle="numKeyStyle" />
         <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
-        <Spacer
-            latin:keyWidth="0%p" />
+        <Spacer />
     </Row>
     <Row>
         <include
@@ -157,20 +156,9 @@
         <Key
             latin:keyLabel="#"
             latin:keyStyle="numKeyStyle" />
-        <switch>
-            <case
-                latin:shortcutKeyEnabled="true"
-                    >
-                <Key
-                    latin:keyStyle="shortcutKeyStyle"
-                    latin:keyXPos="-8.047%p"
-                    latin:keyWidth="fillRight" />
-            </case>
-            <default>
-                <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
-                <Spacer
-                    latin:keyWidth="0%p" />
-            </default>
-        </switch>
+        <include
+            latin:keyXPos="-8.047%p"
+            latin:keyWidth="fillRight"
+            latin:keyboardLayout="@xml/key_shortcut" />
     </Row>
 </merge>
diff --git a/java/res/xml-sw768dp/rows_number_password.xml b/java/res/xml-sw768dp/rows_number_password.xml
index 8acfac6..cfa2214 100644
--- a/java/res/xml-sw768dp/rows_number_password.xml
+++ b/java/res/xml-sw768dp/rows_number_password.xml
@@ -64,16 +64,16 @@
         <Key
             latin:keyStyle="num9KeyStyle" />
         <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
-        <Spacer
-            latin:keyWidth="0%p" />
+        <Spacer />
     </Row>
     <Row>
-        <Spacer
-            latin:keyXPos="32.076%p" />
+        <include
+            latin:keyboardLayout="@xml/key_settings"
+            latin:keyWidth="8.047%p" />
         <Key
+            latin:keyXPos="45.326%p"
             latin:keyStyle="num0KeyStyle" />
         <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
-        <Spacer
-            latin:keyWidth="0%p" />
+        <Spacer />
     </Row>
 </merge>
diff --git a/java/res/xml-sw768dp/rows_phone.xml b/java/res/xml-sw768dp/rows_phone.xml
index 216fbed..b3b3521 100644
--- a/java/res/xml-sw768dp/rows_phone.xml
+++ b/java/res/xml-sw768dp/rows_phone.xml
@@ -106,8 +106,7 @@
         <Key
             latin:keyStyle="num9KeyStyle" />
         <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
-        <Spacer
-            latin:keyWidth="0%p" />
+        <Spacer />
     </Row>
     <Row>
         <include
@@ -125,20 +124,9 @@
         <Key
             latin:keyLabel="#"
             latin:keyStyle="numKeyStyle" />
-        <switch>
-            <case
-                latin:shortcutKeyEnabled="true"
-            >
-                <Key
-                    latin:keyStyle="shortcutKeyStyle"
-                    latin:keyXPos="-8.047%p"
-                    latin:keyWidth="fillRight" />
-            </case>
-            <default>
-                <!-- Note: This Spacer prevents the above key from being marked as a right edge key. -->
-                <Spacer
-                    latin:keyWidth="0%p" />
-            </default>
-        </switch>
+        <include
+            latin:keyXPos="-8.047%p"
+            latin:keyWidth="fillRight"
+            latin:keyboardLayout="@xml/key_shortcut" />
     </Row>
 </merge>
diff --git a/java/res/xml-sw768dp/rows_thai.xml b/java/res/xml-sw768dp/rows_thai.xml
index cc77f8b..c7720c9 100644
--- a/java/res/xml-sw768dp/rows_thai.xml
+++ b/java/res/xml-sw768dp/rows_thai.xml
@@ -28,7 +28,7 @@
     >
         <include
             latin:keyboardLayout="@xml/rowkeys_thai1"
-            latin:keyXPos="11.508%p"/>
+            latin:keyXPos="11.508%p" />
         <Key
             latin:keyStyle="deleteKeyStyle"
             latin:keyWidth="fillBoth"/>