New xlarge keyboard layout (v2)

Bug: 3109804
Change-Id: I1afd022d553785acd50b3104374bbec291206c1e
diff --git a/java/res/xml-xlarge/kbd_phone.xml b/java/res/xml-xlarge/kbd_phone.xml
index 107731f..8199b01 100644
--- a/java/res/xml-xlarge/kbd_phone.xml
+++ b/java/res/xml-xlarge/kbd_phone.xml
@@ -20,7 +20,7 @@
 
 <Keyboard
     xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
-    latin:keyWidth="7.5%p"
+    latin:keyWidth="8.2%p"
     latin:horizontalGap="@dimen/key_horizontal_gap"
     latin:verticalGap="@dimen/key_bottom_gap"
     latin:keyHeight="@dimen/key_height"
@@ -30,13 +30,13 @@
         <Key
             latin:codes="@integer/key_tab"
             latin:keyLabel="@string/label_tab_key"
-            latin:keyWidth="15.0%p"
+            latin:keyWidth="12.1%p"
             latin:isModifier="true"
             latin:keyEdgeFlags="left" />
         <!-- To match one character label size with "Tab", I placed spaces around the char '-'
              and '+'. -->
         <Spacer
-            latin:horizontalGap="6.0%p" />
+            latin:horizontalGap="8.1%p" />
         <Key
             latin:codes="45"
             latin:keyLabel=" - " />
@@ -44,21 +44,21 @@
             latin:codes="43"
             latin:keyLabel=" + " />
         <Spacer
-            latin:horizontalGap="11.5%p" />
+            latin:horizontalGap="8.1%p" />
         <Key
             latin:codes="49"
             latin:keyIcon="@drawable/sym_keyboard_num1"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="50"
             latin:keyIcon="@drawable/sym_keyboard_num2"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="51"
             latin:keyIcon="@drawable/sym_keyboard_num3"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Spacer
-            latin:horizontalGap="6.0%p" />
+            latin:horizontalGap="4.0%p" />
         <Key
             latin:codes="@integer/key_delete"
             latin:keyIcon="@drawable/sym_keyboard_delete"
@@ -72,14 +72,14 @@
         <Key
             latin:codes="@integer/key_symbol"
             latin:keyLabel="@string/label_more_key"
-            latin:keyWidth="15.0%p"
+            latin:keyWidth="12.1%p"
             latin:isModifier="true"
             latin:isSticky="true"
             latin:keyEdgeFlags="left" />
         <!-- To match one character label size with "More", I placed spaces around the char ','
              and '.'. -->
         <Spacer
-            latin:horizontalGap="6.0%p" />
+            latin:horizontalGap="8.1%p" />
         <Key
             latin:codes="44"
             latin:keyLabel=" , " />
@@ -87,21 +87,21 @@
             latin:codes="46"
             latin:keyLabel=" . " />
         <Spacer
-            latin:horizontalGap="11.5%p" />
+            latin:horizontalGap="8.1%p" />
         <Key
             latin:codes="52"
             latin:keyIcon="@drawable/sym_keyboard_num4"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="53"
             latin:keyIcon="@drawable/sym_keyboard_num5"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="54"
             latin:keyIcon="@drawable/sym_keyboard_num6"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Spacer
-            latin:horizontalGap="6.0%p" />
+            latin:horizontalGap="4.0%p" />
         <Key
             latin:codes="@integer/key_return"
             latin:keyIcon="@drawable/sym_keyboard_return"
@@ -116,7 +116,7 @@
         <!-- There is an empty area bellow the "More" key and left of the "(" key.  To ignore
              the touch event on the area, "(" is intentionally not marked as a left edge key. -->
         <Spacer
-            latin:horizontalGap="21.0%p" />
+            latin:horizontalGap="20.2%p" />
         <Key
             latin:codes="40"
             latin:keyLabel=" ( " />
@@ -124,19 +124,19 @@
             latin:codes="41"
             latin:keyLabel=" ) " />
         <Spacer
-            latin:horizontalGap="11.5%p" />
+            latin:horizontalGap="8.1%p" />
         <Key
             latin:codes="55"
             latin:keyIcon="@drawable/sym_keyboard_num7"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="56"
             latin:keyIcon="@drawable/sym_keyboard_num8"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="57"
             latin:keyIcon="@drawable/sym_keyboard_num9"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <!-- There is an empty area bellow the "Enter" key and right of the "9" key.  To ignore
              the touch event on the area, "9" is intentionally not marked as a right edge key. -->
         </Row>
@@ -145,26 +145,26 @@
         <!-- There is an empty area bellow the "More" key and left of the "space" key.  To ignore
              the touch event on the area, "space" is intentionally not marked as a left edge key. -->
         <Spacer
-            latin:horizontalGap="21.0%p" />
+            latin:horizontalGap="20.2%p" />
         <Key
             latin:codes="@integer/key_space"
             latin:keyIcon="@drawable/sym_keyboard_space"
             latin:iconPreview="@drawable/sym_keyboard_feedback_space"
-            latin:keyWidth="15.0%p" />
+            latin:keyWidth="16.4%p" />
         <Spacer
-            latin:horizontalGap="11.5%p" />
+            latin:horizontalGap="8.1%p" />
         <Key
             latin:codes="42"
             latin:keyIcon="@drawable/sym_keyboard_numstar"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="48"
             latin:keyIcon="@drawable/sym_keyboard_num0"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="35"
             latin:keyIcon="@drawable/sym_keyboard_numpound"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <!-- There is an empty area bellow the "Enter" key and right of the "#" key.  To ignore
              the touch event on the area, "#" is intentionally not marked as a right edge key. -->
     </Row>
diff --git a/java/res/xml-xlarge/kbd_phone_symbols.xml b/java/res/xml-xlarge/kbd_phone_symbols.xml
index a7dcd32..2e604d3 100644
--- a/java/res/xml-xlarge/kbd_phone_symbols.xml
+++ b/java/res/xml-xlarge/kbd_phone_symbols.xml
@@ -20,7 +20,7 @@
 
 <Keyboard
     xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
-    latin:keyWidth="7.5%p"
+    latin:keyWidth="8.2%p"
     latin:horizontalGap="@dimen/key_horizontal_gap"
     latin:verticalGap="@dimen/key_bottom_gap"
     latin:keyHeight="@dimen/key_height"
@@ -30,38 +30,38 @@
         <Key
             latin:codes="@integer/key_tab"
             latin:keyLabel="@string/label_tab_key"
-            latin:keyWidth="15.0%p"
+            latin:keyWidth="12.1%p"
             latin:isModifier="true"
             latin:keyEdgeFlags="left" />
         <Spacer
             latin:horizontalGap="4.0%p" />
         <Key
-            latin:codes="44"
-            latin:keyLabel="@string/label_pause_key" />
-        <!-- To match one character label size with "Tab" and "Pause, I placed spaces around the
-             char '-' and '+'. -->
-        <Key
             latin:codes="45"
             latin:keyLabel=" - " />
         <Key
             latin:codes="43"
             latin:keyLabel=" + " />
+        <Key
+            latin:codes="44"
+            latin:keyLabel="@string/label_pause_key" />
+        <!-- To match one character label size with "Tab" and "Pause, I placed spaces around the
+             char '-' and '+'. -->
         <Spacer
-            latin:horizontalGap="6.0%p" />
+            latin:horizontalGap="4.0%p" />
         <Key
             latin:codes="49"
             latin:keyIcon="@drawable/sym_keyboard_num1"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="50"
             latin:keyIcon="@drawable/sym_keyboard_num2"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="51"
             latin:keyIcon="@drawable/sym_keyboard_num3"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Spacer
-            latin:horizontalGap="6.0%p" />
+            latin:horizontalGap="4.0%p" />
         <Key
             latin:codes="@integer/key_delete"
             latin:keyIcon="@drawable/sym_keyboard_delete"
@@ -75,39 +75,39 @@
         <Key
             latin:codes="@integer/key_symbol"
             latin:keyLabel="@string/label_more_key"
-            latin:keyWidth="15.0%p"
+            latin:keyWidth="12.1%p"
             latin:isModifier="true"
             latin:isSticky="true"
             latin:keyEdgeFlags="left" />
         <Spacer
             latin:horizontalGap="4.0%p" />
         <Key
-            latin:codes="59"
-            latin:keyLabel="@string/label_wait_key" />
-        <!-- To match one character label size with "More" and "Wait", I placed spaces around the
-             char ',' and '.'. -->
-        <Key
             latin:codes="44"
             latin:keyLabel=" , " />
         <Key
             latin:codes="46"
             latin:keyLabel=" . " />
+        <Key
+            latin:codes="59"
+            latin:keyLabel="@string/label_wait_key" />
+        <!-- To match one character label size with "More" and "Wait", I placed spaces around the
+             char ',' and '.'. -->
         <Spacer
-            latin:horizontalGap="6.0%p" />
+            latin:horizontalGap="4.0%p" />
         <Key
             latin:codes="52"
             latin:keyIcon="@drawable/sym_keyboard_num4"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="53"
             latin:keyIcon="@drawable/sym_keyboard_num5"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="54"
             latin:keyIcon="@drawable/sym_keyboard_num6"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Spacer
-            latin:horizontalGap="6.0%p" />
+            latin:horizontalGap="4.0%p" />
         <Key
             latin:codes="@integer/key_return"
             latin:keyIcon="@drawable/sym_keyboard_return"
@@ -122,30 +122,30 @@
         <!-- There is an empty area bellow the "More" key and left of the "(" key.  To ignore
              the touch event on the area, "(" is intentionally not marked as a left edge key. -->
         <Spacer
-            latin:horizontalGap="19.0%p" />
-        <Key
-            latin:codes="78"
-            latin:keyLabel=" N " />
+            latin:horizontalGap="16.1%p" />
         <Key
             latin:codes="40"
             latin:keyLabel=" ( " />
         <Key
             latin:codes="41"
             latin:keyLabel=" ) " />
+        <Key
+            latin:codes="78"
+            latin:keyLabel=" N " />
         <Spacer
-            latin:horizontalGap="6.0%p" />
+            latin:horizontalGap="4.0%p" />
         <Key
             latin:codes="55"
             latin:keyIcon="@drawable/sym_keyboard_num7"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="56"
             latin:keyIcon="@drawable/sym_keyboard_num8"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="57"
             latin:keyIcon="@drawable/sym_keyboard_num9"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <!-- There is an empty area bellow the "Enter" key and right of the "9" key.  To ignore
              the touch event on the area, "9" is intentionally not marked as a right edge key. -->
     </Row>
@@ -154,26 +154,26 @@
         <!-- There is an empty area bellow the "More" key and left of the "space" key.  To ignore
              the touch event on the area, "space" is intentionally not marked as a left edge key. -->
         <Spacer
-            latin:horizontalGap="19.0%p" />
+            latin:horizontalGap="16.1%p" />
         <Key
             latin:codes="@integer/key_space"
             latin:keyIcon="@drawable/sym_keyboard_space"
             latin:iconPreview="@drawable/sym_keyboard_feedback_space"
-            latin:keyWidth="22.5%p" />
+            latin:keyWidth="24.6%p" />
         <Spacer
-            latin:horizontalGap="6.0%p" />
+            latin:horizontalGap="4.0%p" />
         <Key
             latin:codes="42"
             latin:keyIcon="@drawable/sym_keyboard_numstar"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="48"
             latin:keyIcon="@drawable/sym_keyboard_num0"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <Key
             latin:codes="35"
             latin:keyIcon="@drawable/sym_keyboard_numpound"
-            latin:keyWidth="10.5%p " />
+            latin:keyWidth="12.1%p " />
         <!-- There is an empty area bellow the "Enter" key and right of the "#" key.  To ignore
              the touch event on the area, "#" is intentionally not marked as a right edge key. -->
     </Row>
diff --git a/java/res/xml-xlarge/kbd_qwerty.xml b/java/res/xml-xlarge/kbd_qwerty.xml
index 6836c2d..b4b880e 100644
--- a/java/res/xml-xlarge/kbd_qwerty.xml
+++ b/java/res/xml-xlarge/kbd_qwerty.xml
@@ -20,7 +20,7 @@
 
 <Keyboard
     xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
-    latin:keyWidth="7.5%p"
+    latin:keyWidth="8.2%p"
     latin:horizontalGap="@dimen/key_horizontal_gap"
     latin:verticalGap="@dimen/key_bottom_gap"
     latin:keyHeight="@dimen/key_height"
@@ -99,7 +99,7 @@
     <Row
         latin:keyboardMode="@+id/mode_im"
     >
-        <include latin:keyboardLayout="@xml/kbd_qwerty_row4_im" />
+        <include latin:keyboardLayout="@xml/kbd_qwerty_row4_common" />
     </Row>
     <Row
         latin:keyboardMode="@+id/mode_webentry"
diff --git a/java/res/xml-xlarge/kbd_qwerty_row1_common.xml b/java/res/xml-xlarge/kbd_qwerty_row1_common.xml
index 677da25..95bed0d 100644
--- a/java/res/xml-xlarge/kbd_qwerty_row1_common.xml
+++ b/java/res/xml-xlarge/kbd_qwerty_row1_common.xml
@@ -68,16 +68,10 @@
         latin:popupKeyboard="@xml/kbd_popup_template"
         latin:popupCharacters="@string/alternates_for_p" />
     <Key
-        latin:keyLabel="="
-        latin:temporaryShiftKeyLabel="+"
-        latin:keyHintIcon="@drawable/key_hint_plus_holo"
-        latin:popupKeyboard="@xml/kbd_popup_template"
-        latin:popupCharacters="+" />
-    <Key
         latin:codes="@integer/key_delete"
         latin:keyIcon="@drawable/sym_keyboard_delete"
         latin:iconPreview="@drawable/sym_keyboard_feedback_delete"
-        latin:keyWidth="10.5%p"
+        latin:keyWidth="11.0%p"
         latin:isModifier="true"
         latin:isRepeatable="true"
         latin:keyEdgeFlags="right" />
diff --git a/java/res/xml-xlarge/kbd_qwerty_row2_common.xml b/java/res/xml-xlarge/kbd_qwerty_row2_common.xml
index 907de3c..54befca 100644
--- a/java/res/xml-xlarge/kbd_qwerty_row2_common.xml
+++ b/java/res/xml-xlarge/kbd_qwerty_row2_common.xml
@@ -24,7 +24,7 @@
     <Key
         latin:codes="@integer/key_symbol"
         latin:keyLabel="@string/label_symbol_key"
-        latin:keyWidth="8.75%p"
+        latin:keyWidth="9.7%p"
         latin:isModifier="true"
         latin:keyEdgeFlags="left" />
     <Key
@@ -56,12 +56,6 @@
         latin:popupKeyboard="@xml/kbd_popup_template"
         latin:popupCharacters="@string/alternates_for_l" />
     <Key
-        latin:keyLabel=";"
-        latin:temporaryShiftKeyLabel=":"
-        latin:keyHintIcon="@drawable/key_hint_colon_holo"
-        latin:popupKeyboard="@xml/kbd_popup_template"
-        latin:popupCharacters=":" />
-    <Key
         latin:keyLabel="\'"
         latin:temporaryShiftKeyLabel="&quot;"
         latin:keyHintIcon="@drawable/key_hint_quote_holo"
@@ -71,7 +65,7 @@
         latin:codes="@integer/key_return"
         latin:keyIcon="@drawable/sym_keyboard_return"
         latin:iconPreview="@drawable/sym_keyboard_feedback_return"
-        latin:keyWidth="8.75%p"
+        latin:keyWidth="8.3%p"
         latin:isModifier="true"
         latin:keyEdgeFlags="right" />
 </merge>
diff --git a/java/res/xml-xlarge/kbd_qwerty_row2_email.xml b/java/res/xml-xlarge/kbd_qwerty_row2_email.xml
index e274537..7fd43ce 100644
--- a/java/res/xml-xlarge/kbd_qwerty_row2_email.xml
+++ b/java/res/xml-xlarge/kbd_qwerty_row2_email.xml
@@ -24,7 +24,7 @@
     <Key
         latin:codes="@integer/key_symbol"
         latin:keyLabel="@string/label_symbol_key"
-        latin:keyWidth="8.75%p"
+        latin:keyWidth="9.7%p"
         latin:isModifier="true"
         latin:keyEdgeFlags="left" />
     <Key
@@ -56,18 +56,12 @@
         latin:popupKeyboard="@xml/kbd_popup_template"
         latin:popupCharacters="@string/alternates_for_l" />
     <Key
-        latin:keyLabel=";" />
-    <Key
-        latin:keyLabel="\'"
-        latin:temporaryShiftKeyLabel="&quot;"
-        latin:keyHintIcon="@drawable/key_hint_quote_holo"
-        latin:popupKeyboard="@xml/kbd_popup_template"
-        latin:popupCharacters="&quot;" />
+        latin:keyLabel="\@" />
     <Key
         latin:codes="@integer/key_return"
         latin:keyIcon="@drawable/sym_keyboard_return"
         latin:iconPreview="@drawable/sym_keyboard_feedback_return"
-        latin:keyWidth="8.75%p"
+        latin:keyWidth="8.3%p"
         latin:isModifier="true"
         latin:keyEdgeFlags="right" />
 </merge>
diff --git a/java/res/xml-xlarge/kbd_qwerty_row3_common.xml b/java/res/xml-xlarge/kbd_qwerty_row3_common.xml
index b3fa466..eb1e183 100644
--- a/java/res/xml-xlarge/kbd_qwerty_row3_common.xml
+++ b/java/res/xml-xlarge/kbd_qwerty_row3_common.xml
@@ -25,7 +25,7 @@
         latin:codes="@integer/key_shift"
         latin:keyIcon="@drawable/sym_keyboard_shift"
         latin:iconPreview="@drawable/sym_keyboard_feedback_shift"
-        latin:keyWidth="12.5%p"
+        latin:keyWidth="13.1%p"
         latin:isModifier="true"
         latin:isSticky="true"
         latin:keyEdgeFlags="left" />
@@ -53,18 +53,12 @@
         latin:keyLabel="m" />
     <Key
         latin:keyLabel=","
-        latin:temporaryShiftKeyLabel="*"
-        latin:keyHintIcon="@drawable/key_hint_star_holo"
-        latin:popupKeyboard="@xml/kbd_popup_template"
-        latin:popupCharacters="*" />
-    <Key
-        latin:keyLabel="."
         latin:temporaryShiftKeyLabel="!"
         latin:keyHintIcon="@drawable/key_hint_exclamation_holo"
         latin:popupKeyboard="@xml/kbd_popup_template"
         latin:popupCharacters="!" />
     <Key
-        latin:keyLabel="/"
+        latin:keyLabel="."
         latin:temporaryShiftKeyLabel="\?"
         latin:keyHintIcon="@drawable/key_hint_question_holo"
         latin:popupKeyboard="@xml/kbd_popup_template"
@@ -73,7 +67,7 @@
         latin:codes="@integer/key_shift"
         latin:keyIcon="@drawable/sym_keyboard_shift"
         latin:iconPreview="@drawable/sym_keyboard_feedback_shift"
-        latin:keyWidth="12.5%p"
+        latin:keyWidth="13.1%p"
         latin:isModifier="true"
         latin:isSticky="true"
         latin:keyEdgeFlags="right" />
diff --git a/java/res/xml-xlarge/kbd_qwerty_row3_email.xml b/java/res/xml-xlarge/kbd_qwerty_row3_email.xml
index d498406..d9e3542 100644
--- a/java/res/xml-xlarge/kbd_qwerty_row3_email.xml
+++ b/java/res/xml-xlarge/kbd_qwerty_row3_email.xml
@@ -25,7 +25,7 @@
         latin:codes="@integer/key_shift"
         latin:keyIcon="@drawable/sym_keyboard_shift"
         latin:iconPreview="@drawable/sym_keyboard_feedback_shift"
-        latin:keyWidth="12.5%p"
+        latin:keyWidth="13.1%p"
         latin:isModifier="true"
         latin:isSticky="true"
         latin:keyEdgeFlags="left" />
@@ -56,12 +56,10 @@
     <Key
         latin:keyLabel="." />
     <Key
-        latin:keyLabel="\@" />
-    <Key
         latin:codes="@integer/key_shift"
         latin:keyIcon="@drawable/sym_keyboard_shift"
         latin:iconPreview="@drawable/sym_keyboard_feedback_shift"
-        latin:keyWidth="12.5%p"
+        latin:keyWidth="13.1%p"
         latin:isModifier="true"
         latin:isSticky="true"
         latin:keyEdgeFlags="right" />
diff --git a/java/res/xml-xlarge/kbd_qwerty_row4_common.xml b/java/res/xml-xlarge/kbd_qwerty_row4_common.xml
index 33a7472..2bcd71d 100644
--- a/java/res/xml-xlarge/kbd_qwerty_row4_common.xml
+++ b/java/res/xml-xlarge/kbd_qwerty_row4_common.xml
@@ -22,35 +22,34 @@
     xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
 >
     <Spacer
-        latin:horizontalGap="16.25%p" />
+        latin:horizontalGap="15.1%p" />
     <Key
-        latin:keyLabel="("
-        latin:temporaryShiftKeyLabel="&lt;"
-        latin:keyHintIcon="@drawable/key_hint_smaller_holo"
-        latin:popupKeyboard="@xml/kbd_popup_template"
-        latin:popupCharacters="&lt;" />
+        latin:keyLabel=":-)"
+        latin:keyOutputText=":-)"
+        latin:keyHintIcon="@drawable/hint_popup"
+        latin:popupKeyboard="@xml/popup_smileys" />
     <Key
-        latin:keyLabel=")"
-        latin:temporaryShiftKeyLabel="&gt;"
-        latin:keyHintIcon="@drawable/key_hint_larger_holo"
+        latin:keyLabel="="
+        latin:temporaryShiftKeyLabel="+"
+        latin:keyHintIcon="@drawable/key_hint_plus_holo"
         latin:popupKeyboard="@xml/kbd_popup_template"
         latin:popupCharacters="&gt;" />
     <Key
         latin:codes="@integer/key_space"
         latin:keyIcon="@drawable/sym_keyboard_space"
         latin:iconPreview="@drawable/sym_keyboard_feedback_space"
-        latin:keyWidth="37.5%p"
+        latin:keyWidth="37.0%p"
         latin:isModifier="true" />
     <Key
+        latin:keyLabel="-"
+        latin:temporaryShiftKeyLabel="/"
+        latin:keyHintIcon="@drawable/key_hint_slash_holo"
+        latin:popupKeyboard="@xml/kbd_popup_template"
+        latin:popupCharacters="/" />
+    <Key
         latin:keyLabel="_"
         latin:temporaryShiftKeyLabel="\@"
         latin:keyHintIcon="@drawable/key_hint_at_holo"
         latin:popupKeyboard="@xml/kbd_popup_template"
         latin:popupCharacters="\@" />
-    <Key
-        latin:keyLabel="-"
-        latin:temporaryShiftKeyLabel="#"
-        latin:keyHintIcon="@drawable/key_hint_doublecross_holo"
-        latin:popupKeyboard="@xml/kbd_popup_template"
-        latin:popupCharacters="#" />
 </merge>
diff --git a/java/res/xml-xlarge/kbd_qwerty_row4_email.xml b/java/res/xml-xlarge/kbd_qwerty_row4_email.xml
index c5a5b06..f10cf4b 100644
--- a/java/res/xml-xlarge/kbd_qwerty_row4_email.xml
+++ b/java/res/xml-xlarge/kbd_qwerty_row4_email.xml
@@ -22,16 +22,18 @@
     xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
 >
     <Spacer
-        latin:horizontalGap="16.25%p" />
+        latin:horizontalGap="15.1%p" />
     <Key
         latin:keyLabel=".com"
         latin:keyOutputText=".com"
-        latin:keyWidth="15.0%p" />
+        latin:keyHintIcon="@drawable/hint_popup"
+        latin:popupKeyboard="@xml/popup_domains"
+        latin:keyWidth="16.4%p" />
     <Key
         latin:codes="@integer/key_space"
         latin:keyIcon="@drawable/sym_keyboard_space"
         latin:iconPreview="@drawable/sym_keyboard_feedback_space"
-        latin:keyWidth="37.5%p"
+        latin:keyWidth="37.0%p"
         latin:isModifier="true" />
     <Key
         latin:keyLabel="_" />
diff --git a/java/res/xml-xlarge/kbd_qwerty_row4_im.xml b/java/res/xml-xlarge/kbd_qwerty_row4_im.xml
deleted file mode 100644
index 0efa9e5..0000000
--- a/java/res/xml-xlarge/kbd_qwerty_row4_im.xml
+++ /dev/null
@@ -1,50 +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"
->
-    <Spacer
-        latin:horizontalGap="16.25%p" />
-    <Key
-        latin:keyLabel=":-)"
-        latin:keyOutputText=":-)"
-        latin:keyHintIcon="@drawable/hint_popup"
-        latin:popupKeyboard="@xml/popup_smileys"
-        latin:keyWidth="15.0%p" />
-    <Key
-        latin:codes="@integer/key_space"
-        latin:keyIcon="@drawable/sym_keyboard_space"
-        latin:iconPreview="@drawable/sym_keyboard_feedback_space"
-        latin:keyWidth="37.5%p"
-        latin:isModifier="true" />
-    <Key
-        latin:keyLabel="_"
-        latin:temporaryShiftKeyLabel="\@"
-        latin:keyHintIcon="@drawable/key_hint_at_holo"
-        latin:popupKeyboard="@xml/kbd_popup_template"
-        latin:popupCharacters="\@" />
-    <Key
-        latin:keyLabel="-"
-        latin:temporaryShiftKeyLabel="#"
-        latin:keyHintIcon="@drawable/key_hint_doublecross_holo"
-        latin:popupKeyboard="@xml/kbd_popup_template"
-        latin:popupCharacters="#" />
-</merge>
diff --git a/java/res/xml-xlarge/kbd_qwerty_row4_url.xml b/java/res/xml-xlarge/kbd_qwerty_row4_url.xml
index 48924bb..420d136 100644
--- a/java/res/xml-xlarge/kbd_qwerty_row4_url.xml
+++ b/java/res/xml-xlarge/kbd_qwerty_row4_url.xml
@@ -22,27 +22,29 @@
     xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
 >
     <Spacer
-        latin:horizontalGap="16.25%p" />
+        latin:horizontalGap="15.1%p" />
     <Key
         latin:keyLabel=".com"
         latin:keyOutputText=".com"
-        latin:keyWidth="15.0%p" />
+        latin:keyHintIcon="@drawable/hint_popup"
+        latin:popupKeyboard="@xml/popup_domains"
+        latin:keyWidth="16.4%p" />
     <Key
         latin:codes="@integer/key_space"
         latin:keyIcon="@drawable/sym_keyboard_space"
         latin:iconPreview="@drawable/sym_keyboard_feedback_space"
-        latin:keyWidth="37.5%p"
+        latin:keyWidth="37.0%p"
         latin:isModifier="true" />
     <Key
-        latin:keyLabel="_"
-        latin:temporaryShiftKeyLabel="\@"
-        latin:keyHintIcon="@drawable/key_hint_at_holo"
-        latin:popupKeyboard="@xml/kbd_popup_template"
-        latin:popupCharacters="\@" />
-    <Key
         latin:keyLabel="-"
-        latin:temporaryShiftKeyLabel="#"
-        latin:keyHintIcon="@drawable/key_hint_doublecross_holo"
+        latin:temporaryShiftKeyLabel="/"
+        latin:keyHintIcon="@drawable/key_hint_slash_holo"
         latin:popupKeyboard="@xml/kbd_popup_template"
-        latin:popupCharacters="#" />
+        latin:popupCharacters="/" />
+    <Key
+        latin:keyLabel="_"
+        latin:temporaryShiftKeyLabel=":"
+        latin:keyHintIcon="@drawable/key_hint_colon_holo"
+        latin:popupKeyboard="@xml/kbd_popup_template"
+        latin:popupCharacters=":" />
 </merge>
diff --git a/java/res/xml-xlarge/kbd_symbols.xml b/java/res/xml-xlarge/kbd_symbols.xml
index 34fc114..5398151 100644
--- a/java/res/xml-xlarge/kbd_symbols.xml
+++ b/java/res/xml-xlarge/kbd_symbols.xml
@@ -20,7 +20,7 @@
 
 <Keyboard
     xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
-    latin:keyWidth="7.5%p"
+    latin:keyWidth="8.2%p"
     latin:horizontalGap="@dimen/key_horizontal_gap"
     latin:verticalGap="@dimen/key_bottom_gap"
     latin:keyHeight="@dimen/key_height"
@@ -54,12 +54,10 @@
         <Key
             latin:keyLabel="0" />
         <Key
-            latin:keyLabel="~" />
-        <Key
             latin:codes="@integer/key_delete"
             latin:keyIcon="@drawable/sym_keyboard_delete"
             latin:iconPreview="@drawable/sym_keyboard_feedback_delete"
-            latin:keyWidth="10.5%p"
+            latin:keyWidth="11.0%p"
             latin:isModifier="true"
             latin:isRepeatable="true"
             latin:keyEdgeFlags="right" />
@@ -68,7 +66,7 @@
         <Key
             latin:codes="@integer/key_symbol"
             latin:keyLabel="@string/label_alpha_key"
-            latin:keyWidth="8.75%p"
+            latin:keyWidth="9.7%p"
             latin:isModifier="true"
             latin:keyEdgeFlags="left" />
         <Key
@@ -80,8 +78,6 @@
         <Key
             latin:keyLabel="%" />
         <Key
-            latin:keyLabel="^" />
-        <Key
             latin:keyLabel="&amp;" />
         <Key
             latin:keyLabel="*" />
@@ -97,7 +93,7 @@
             latin:codes="@integer/key_return"
             latin:keyIcon="@drawable/sym_keyboard_return"
             latin:iconPreview="@drawable/sym_keyboard_feedback_return"
-            latin:keyWidth="8.75%p"
+            latin:keyWidth="8.3%p"
             latin:isModifier="true"
             latin:keyEdgeFlags="right" />
     </Row>
@@ -106,13 +102,11 @@
             latin:codes="@integer/key_shift"
             latin:keyLabel="@string/label_more_key"
             latin:iconPreview="@drawable/sym_keyboard_feedback_shift"
-            latin:keyWidth="12.5%p"
+            latin:keyWidth="13.1%p"
             latin:isModifier="true"
             latin:isSticky="true"
             latin:keyEdgeFlags="left" />
         <Key
-            latin:keyLabel="!" />
-        <Key
             latin:keyLabel="&quot;" />
         <Key
             latin:keyLabel="\'" />
@@ -123,18 +117,18 @@
         <Key
             latin:keyLabel="/" />
         <Key
-            latin:keyLabel="\\" />
-        <Key
             latin:keyLabel="," />
         <Key
             latin:keyLabel="." />
         <Key
+            latin:keyLabel="!" />
+        <Key
             latin:keyLabel="\?" />
         <Key
             latin:codes="@integer/key_shift"
             latin:keyLabel="@string/label_more_key"
             latin:iconPreview="@drawable/sym_keyboard_feedback_shift"
-            latin:keyWidth="12.5%p"
+            latin:keyWidth="13.1%p"
             latin:isModifier="true"
             latin:isSticky="true"
             latin:keyEdgeFlags="right" />
@@ -142,20 +136,12 @@
     <!-- This row is intentionally not marked as a bottom row -->
     <Row>
         <Spacer
-            latin:horizontalGap="16.25%p" />
-        <Key
-            latin:keyLabel="&lt;" />
-        <Key
-            latin:keyLabel="&gt;" />
+            latin:horizontalGap="31.5%p" />
         <Key
             latin:codes="@integer/key_space"
             latin:keyIcon="@drawable/sym_keyboard_space"
             latin:iconPreview="@drawable/sym_keyboard_feedback_space"
-            latin:keyWidth="37.5%p"
+            latin:keyWidth="37.0%p"
             latin:isModifier="true" />
-        <Key
-            latin:keyLabel="[" />
-        <Key
-            latin:keyLabel="]" />
     </Row>
 </Keyboard>
diff --git a/java/res/xml-xlarge/kbd_symbols_shift.xml b/java/res/xml-xlarge/kbd_symbols_shift.xml
index 8ed1c11..b8f8136 100644
--- a/java/res/xml-xlarge/kbd_symbols_shift.xml
+++ b/java/res/xml-xlarge/kbd_symbols_shift.xml
@@ -20,7 +20,7 @@
 
 <Keyboard
     xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
-    latin:keyWidth="7.5%p"
+    latin:keyWidth="8.2%p"
     latin:horizontalGap="@dimen/key_horizontal_gap"
     latin:verticalGap="@dimen/key_bottom_gap"
     latin:keyHeight="@dimen/key_height"
@@ -34,9 +34,9 @@
             latin:isModifier="true"
             latin:keyEdgeFlags="left" />
         <Key
-            latin:keyLabel="∞" />
+            latin:keyLabel="~" />
         <Key
-            latin:keyLabel="±" />
+            latin:keyLabel="`" />
         <Key
             latin:keyLabel="|" />
         <Key
@@ -50,16 +50,14 @@
         <Key
             latin:keyLabel="×" />
         <Key
-            latin:keyLabel="±" />
+            latin:keyLabel="{" />
         <Key
-            latin:keyLabel="∆" />
-        <Key
-            latin:keyLabel="≈" />
+            latin:keyLabel="}" />
         <Key
             latin:codes="@integer/key_delete"
             latin:keyIcon="@drawable/sym_keyboard_delete"
             latin:iconPreview="@drawable/sym_keyboard_feedback_delete"
-            latin:keyWidth="10.5%p"
+            latin:keyWidth="11.0%p"
             latin:isModifier="true"
             latin:isRepeatable="true"
             latin:keyEdgeFlags="right" />
@@ -68,7 +66,7 @@
         <Key
             latin:codes="@integer/key_symbol"
             latin:keyLabel="@string/label_alpha_key"
-            latin:keyWidth="8.75%p"
+            latin:keyWidth="9.7%p"
             latin:isModifier="true"
             latin:keyEdgeFlags="left" />
         <Key
@@ -76,28 +74,26 @@
         <Key
             latin:keyLabel="¢" />
         <Key
-            latin:keyLabel="¥" />
-        <Key
             latin:keyLabel="€" />
         <Key
-            latin:keyLabel="¼" />
+            latin:keyLabel="¥" />
         <Key
-            latin:keyLabel="½" />
-        <Key
-            latin:keyLabel="¾" />
+            latin:keyLabel="^" />
         <Key
             latin:keyLabel="_" />
         <Key
             latin:keyLabel="=" />
         <Key
-            latin:keyLabel="{" />
+            latin:keyLabel="±" />
         <Key
-            latin:keyLabel="}" />
+            latin:keyLabel="[" />
+        <Key
+            latin:keyLabel="]" />
         <Key
             latin:codes="@integer/key_return"
             latin:keyIcon="@drawable/sym_keyboard_return"
             latin:iconPreview="@drawable/sym_keyboard_feedback_return"
-            latin:keyWidth="8.75%p"
+            latin:keyWidth="8.3%p"
             latin:isModifier="true"
             latin:keyEdgeFlags="right" />
     </Row>
@@ -106,35 +102,33 @@
             latin:codes="@integer/key_shift"
             latin:keyLabel="@string/label_more_key"
             latin:iconPreview="@drawable/sym_keyboard_feedback_shift"
-            latin:keyWidth="12.5%p"
+            latin:keyWidth="13.1%p"
             latin:isModifier="true"
             latin:isSticky="true"
             latin:keyEdgeFlags="left" />
         <Key
-            latin:keyLabel="¡" />
+            latin:keyLabel="&lt;" />
         <Key
-            latin:keyLabel="°" />
+            latin:keyLabel="&gt;" />
         <Key
             latin:keyLabel="©" />
         <Key
             latin:keyLabel="®" />
         <Key
-            latin:keyLabel="¶" />
+            latin:keyLabel="\\" />
         <Key
-            latin:keyLabel="§" />
+            latin:keyLabel="°" />
         <Key
-            latin:keyLabel="¤" />
+            latin:keyLabel="∞" />
         <Key
-            latin:keyLabel="¬" />
-        <Key
-            latin:keyLabel="…" />
+            latin:keyLabel="¡" />
         <Key
             latin:keyLabel="¿" />
         <Key
             latin:codes="@integer/key_shift"
             latin:keyLabel="@string/label_more_key"
             latin:iconPreview="@drawable/sym_keyboard_feedback_shift"
-            latin:keyWidth="12.5%p"
+            latin:keyWidth="13.1%p"
             latin:isModifier="true"
             latin:isSticky="true"
             latin:keyEdgeFlags="right" />
@@ -142,20 +136,12 @@
     <!-- This row is intentionally not marked as a bottom row -->
     <Row>
         <Spacer
-            latin:horizontalGap="16.25%p" />
-        <Key
-            latin:keyLabel="≤" />
-        <Key
-            latin:keyLabel="≥" />
+            latin:horizontalGap="31.5%p" />
         <Key
             latin:codes="@integer/key_space"
             latin:keyIcon="@drawable/sym_keyboard_space"
             latin:iconPreview="@drawable/sym_keyboard_feedback_space"
-            latin:keyWidth="37.5%p"
+            latin:keyWidth="37.0%p"
             latin:isModifier="true" />
-        <Key
-            latin:keyLabel="²" />
-        <Key
-            latin:keyLabel="³" />
     </Row>
 </Keyboard>
diff --git a/java/res/xml-xlarge/popup_domains.xml b/java/res/xml-xlarge/popup_domains.xml
new file mode 100644
index 0000000..d20bcb1
--- /dev/null
+++ b/java/res/xml-xlarge/popup_domains.xml
@@ -0,0 +1,46 @@
+<?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.
+*/
+-->
+
+<Keyboard
+    xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
+    latin:keyWidth="15%p"
+    latin:horizontalGap="0px"
+    latin:verticalGap="0px"
+    latin:keyHeight="@dimen/popup_key_height"
+>
+    <Row
+        latin:rowEdgeFlags="top|bottom"
+    >
+        <Key
+            latin:keyLabel="@string/popular_domain_1"
+            latin:keyOutputText="@string/popular_domain_1"
+            latin:keyEdgeFlags="left" />
+        <Key
+            latin:keyLabel="@string/popular_domain_2"
+            latin:keyOutputText="@string/popular_domain_2" />
+        <Key
+            latin:keyLabel="@string/popular_domain_3"
+            latin:keyOutputText="@string/popular_domain_3" />
+        <Key
+            latin:keyLabel="@string/popular_domain_4"
+            latin:keyOutputText="@string/popular_domain_4"
+            latin:keyEdgeFlags="right" />
+    </Row>
+</Keyboard>