Fix PC Qwerty shift locked layout

Bug: 13537661
Change-Id: I5b3645a64126118e22f44c262123076e85d7f83e
diff --git a/java/res/xml-sw600dp/keys_pcqwerty2_right3.xml b/java/res/xml-sw600dp/keys_pcqwerty2_right3.xml
index ab99ec5..76ac6bb 100644
--- a/java/res/xml-sw600dp/keys_pcqwerty2_right3.xml
+++ b/java/res/xml-sw600dp/keys_pcqwerty2_right3.xml
@@ -23,7 +23,7 @@
 >
     <switch>
         <case
-            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted"
+            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted|alphabetShiftLocked"
         >
             <Key
                 latin:keySpec="["
diff --git a/java/res/xml-sw600dp/keys_pcqwerty3_right2.xml b/java/res/xml-sw600dp/keys_pcqwerty3_right2.xml
index 5443396..f18fb50 100644
--- a/java/res/xml-sw600dp/keys_pcqwerty3_right2.xml
+++ b/java/res/xml-sw600dp/keys_pcqwerty3_right2.xml
@@ -23,7 +23,7 @@
 >
     <switch>
         <case
-            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted"
+            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted|alphabetShiftLocked"
         >
             <Key
                 latin:keySpec=";"
diff --git a/java/res/xml-sw600dp/keys_pcqwerty4_right3.xml b/java/res/xml-sw600dp/keys_pcqwerty4_right3.xml
index c95ca2e..ff1a2c8 100644
--- a/java/res/xml-sw600dp/keys_pcqwerty4_right3.xml
+++ b/java/res/xml-sw600dp/keys_pcqwerty4_right3.xml
@@ -23,7 +23,7 @@
 >
     <switch>
         <case
-            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted"
+            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted|alphabetShiftLocked"
         >
             <Key
                 latin:keySpec=","
diff --git a/java/res/xml-sw600dp/rowkeys_pcqwerty1.xml b/java/res/xml-sw600dp/rowkeys_pcqwerty1.xml
index 5389e22..5c7506e 100644
--- a/java/res/xml-sw600dp/rowkeys_pcqwerty1.xml
+++ b/java/res/xml-sw600dp/rowkeys_pcqwerty1.xml
@@ -21,87 +21,98 @@
 <merge
     xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
 >
-    <Key
-        latin:keySpec="`"
-        latin:keyHintLabel="~"
-        latin:additionalMoreKeys="~"
-        latin:keyStyle="hasShiftedLetterHintStyle" />
-    <Key
-        latin:keySpec="1"
-        latin:keyHintLabel="!"
-        latin:additionalMoreKeys="!"
-        latin:keyStyle="hasShiftedLetterHintStyle"
-        latin:moreKeys="!text/more_keys_for_exclamation,!text/more_keys_for_symbols_1" />
-    <Key
-        latin:keySpec="2"
-        latin:keyHintLabel="\@"
-        latin:additionalMoreKeys="\@"
-        latin:keyStyle="hasShiftedLetterHintStyle"
-        latin:moreKeys="!text/more_keys_for_symbols_2" />
-    <Key
-        latin:keySpec="3"
-        latin:keyHintLabel="\#"
-        latin:additionalMoreKeys="\#"
-        latin:keyStyle="hasShiftedLetterHintStyle"
-        latin:moreKeys="!text/more_keys_for_symbols_3" />
-    <Key
-        latin:keySpec="4"
-        latin:keyHintLabel="$"
-        latin:additionalMoreKeys="$"
-        latin:keyStyle="hasShiftedLetterHintStyle"
-        latin:moreKeys="!text/more_keys_for_symbols_4" />
-    <Key
-        latin:keySpec="5"
-        latin:keyHintLabel="%"
-        latin:additionalMoreKeys="\\%"
-        latin:keyStyle="hasShiftedLetterHintStyle"
-        latin:moreKeys="!text/more_keys_for_symbols_5" />
-    <Key
-        latin:keySpec="6"
-        latin:keyHintLabel="^"
-        latin:additionalMoreKeys="^"
-        latin:keyStyle="hasShiftedLetterHintStyle"
-        latin:moreKeys="!text/more_keys_for_symbols_6" />
-    <Key
-        latin:keySpec="7"
-        latin:keyHintLabel="&amp;"
-        latin:additionalMoreKeys="&amp;"
-        latin:keyStyle="hasShiftedLetterHintStyle"
-        latin:moreKeys="!text/more_keys_for_symbols_7" />
-    <Key
-        latin:keySpec="8"
-        latin:keyHintLabel="*"
-        latin:additionalMoreKeys="*"
-        latin:keyStyle="hasShiftedLetterHintStyle"
-        latin:moreKeys="!text/more_keys_for_symbols_8" />
-    <Key
-        latin:keySpec="9"
-        latin:keyHintLabel="("
-        latin:additionalMoreKeys="("
-        latin:keyStyle="hasShiftedLetterHintStyle"
-        latin:moreKeys="!text/more_keys_for_symbols_9" />
-    <Key
-        latin:keySpec="0"
-        latin:keyHintLabel=")"
-        latin:additionalMoreKeys=")"
-        latin:keyStyle="hasShiftedLetterHintStyle"
-        latin:moreKeys="!text/more_keys_for_symbols_0" />
-    <!-- U+2013: "–" EN DASH
-         U+2014: "—" EM DASH
-         U+00B7: "·" MIDDLE DOT -->
-    <Key
-        latin:keySpec="-"
-        latin:keyHintLabel="_"
-        latin:additionalMoreKeys="_"
-        latin:keyStyle="hasShiftedLetterHintStyle"
-        latin:moreKeys="&#x2013;,&#x2014;,&#x00B7;" />
-    <!-- U+221E: "∞" INFINITY
-         U+2260: "≠" NOT EQUAL TO
-         U+2248: "≈" ALMOST EQUAL TO -->
-    <Key
-        latin:keySpec="="
-        latin:keyHintLabel="+"
-        latin:additionalMoreKeys="+"
-        latin:keyStyle="hasShiftedLetterHintStyle"
-        latin:moreKeys="&#x221E;,&#x2260;,&#x2248;" />
+    <switch>
+        <case
+            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted|alphabetShiftLocked"
+        >
+            <Key
+                latin:keySpec="`"
+                latin:keyHintLabel="~"
+                latin:additionalMoreKeys="~"
+                latin:keyStyle="hasShiftedLetterHintStyle" />
+            <Key
+                latin:keySpec="1"
+                latin:keyHintLabel="!"
+                latin:additionalMoreKeys="!"
+                latin:keyStyle="hasShiftedLetterHintStyle"
+                latin:moreKeys="!text/more_keys_for_exclamation,!text/more_keys_for_symbols_1" />
+            <Key
+                latin:keySpec="2"
+                latin:keyHintLabel="\@"
+                latin:additionalMoreKeys="\@"
+                latin:keyStyle="hasShiftedLetterHintStyle"
+                latin:moreKeys="!text/more_keys_for_symbols_2" />
+            <Key
+                latin:keySpec="3"
+                latin:keyHintLabel="\#"
+                latin:additionalMoreKeys="\#"
+                latin:keyStyle="hasShiftedLetterHintStyle"
+                latin:moreKeys="!text/more_keys_for_symbols_3" />
+            <Key
+                latin:keySpec="4"
+                latin:keyHintLabel="$"
+                latin:additionalMoreKeys="$"
+                latin:keyStyle="hasShiftedLetterHintStyle"
+                latin:moreKeys="!text/more_keys_for_symbols_4" />
+            <Key
+                latin:keySpec="5"
+                latin:keyHintLabel="%"
+                latin:additionalMoreKeys="\\%"
+                latin:keyStyle="hasShiftedLetterHintStyle"
+                latin:moreKeys="!text/more_keys_for_symbols_5" />
+            <Key
+                latin:keySpec="6"
+                latin:keyHintLabel="^"
+                latin:additionalMoreKeys="^"
+                latin:keyStyle="hasShiftedLetterHintStyle"
+                latin:moreKeys="!text/more_keys_for_symbols_6" />
+            <Key
+                latin:keySpec="7"
+                latin:keyHintLabel="&amp;"
+                latin:additionalMoreKeys="&amp;"
+                latin:keyStyle="hasShiftedLetterHintStyle"
+                latin:moreKeys="!text/more_keys_for_symbols_7" />
+            <Key
+                latin:keySpec="8"
+                latin:keyHintLabel="*"
+                latin:additionalMoreKeys="*"
+                latin:keyStyle="hasShiftedLetterHintStyle"
+                latin:moreKeys="!text/more_keys_for_symbols_8" />
+            <Key
+                latin:keySpec="9"
+                latin:keyHintLabel="("
+                latin:additionalMoreKeys="("
+                latin:keyStyle="hasShiftedLetterHintStyle"
+                latin:moreKeys="!text/more_keys_for_symbols_9" />
+            <Key
+                latin:keySpec="0"
+                latin:keyHintLabel=")"
+                latin:additionalMoreKeys=")"
+                latin:keyStyle="hasShiftedLetterHintStyle"
+                latin:moreKeys="!text/more_keys_for_symbols_0" />
+            <!-- U+2013: "–" EN DASH
+                 U+2014: "—" EM DASH
+                 U+00B7: "·" MIDDLE DOT -->
+            <Key
+                latin:keySpec="-"
+                latin:keyHintLabel="_"
+                latin:additionalMoreKeys="_"
+                latin:keyStyle="hasShiftedLetterHintStyle"
+                latin:moreKeys="&#x2013;,&#x2014;,&#x00B7;" />
+            <!-- U+221E: "∞" INFINITY
+                 U+2260: "≠" NOT EQUAL TO
+                 U+2248: "≈" ALMOST EQUAL TO -->
+            <Key
+                latin:keySpec="="
+                latin:keyHintLabel="+"
+                latin:additionalMoreKeys="+"
+                latin:keyStyle="hasShiftedLetterHintStyle"
+                latin:moreKeys="&#x221E;,&#x2260;,&#x2248;" />
+        </case>
+        <!-- keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLockShifted" -->
+        <default>
+            <include
+                 latin:keyboardLayout="@xml/rowkeys_pcqwerty1_shift" />
+        </default>
+    </switch>
 </merge>
diff --git a/java/res/xml-sw600dp/rows_pcqwerty.xml b/java/res/xml-sw600dp/rows_pcqwerty.xml
index b503d83..73b7e47 100644
--- a/java/res/xml-sw600dp/rows_pcqwerty.xml
+++ b/java/res/xml-sw600dp/rows_pcqwerty.xml
@@ -26,19 +26,8 @@
     <Row
         latin:keyWidth="7.0%p"
     >
-        <switch>
-            <case
-                latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted"
-            >
-                <include
-                    latin:keyboardLayout="@xml/rowkeys_pcqwerty1" />
-            </case>
-            <!-- keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLocked|alphabetShiftLockShifted" -->
-            <default>
-                <include
-                     latin:keyboardLayout="@xml/rowkeys_pcqwerty1_shift" />
-            </default>
-        </switch>
+        <include
+            latin:keyboardLayout="@xml/rowkeys_pcqwerty1" />
         <Key
             latin:keyStyle="deleteKeyStyle"
             latin:keyWidth="fillRight" />
diff --git a/java/res/xml/keys_pcqwerty2_right3.xml b/java/res/xml/keys_pcqwerty2_right3.xml
index 9e62b09..b188cff 100644
--- a/java/res/xml/keys_pcqwerty2_right3.xml
+++ b/java/res/xml/keys_pcqwerty2_right3.xml
@@ -23,7 +23,7 @@
 >
     <switch>
         <case
-            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted"
+            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted|alphabetShiftLocked"
         >
             <Key
                 latin:keySpec="["
diff --git a/java/res/xml/keys_pcqwerty3_right2.xml b/java/res/xml/keys_pcqwerty3_right2.xml
index d889216..8a1f60f 100644
--- a/java/res/xml/keys_pcqwerty3_right2.xml
+++ b/java/res/xml/keys_pcqwerty3_right2.xml
@@ -23,7 +23,7 @@
 >
     <switch>
         <case
-            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted"
+            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted|alphabetShiftLocked"
         >
             <Key
                 latin:keySpec=";"
diff --git a/java/res/xml/keys_pcqwerty4_right3.xml b/java/res/xml/keys_pcqwerty4_right3.xml
index f32d809..6beba20 100644
--- a/java/res/xml/keys_pcqwerty4_right3.xml
+++ b/java/res/xml/keys_pcqwerty4_right3.xml
@@ -23,7 +23,7 @@
 >
     <switch>
         <case
-            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted"
+            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted|alphabetShiftLocked"
         >
             <Key
                 latin:keySpec=","
diff --git a/java/res/xml/rowkeys_pcqwerty1.xml b/java/res/xml/rowkeys_pcqwerty1.xml
index fdb5072..3695733 100644
--- a/java/res/xml/rowkeys_pcqwerty1.xml
+++ b/java/res/xml/rowkeys_pcqwerty1.xml
@@ -21,61 +21,72 @@
 <merge
     xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
 >
-    <Key
-        latin:keySpec="`"
-        latin:additionalMoreKeys="~" />
-    <Key
-        latin:keySpec="1"
-        latin:additionalMoreKeys="!,!text/more_keys_for_exclamation"
-        latin:moreKeys="!text/more_keys_for_symbols_1" />
-    <Key
-        latin:keySpec="2"
-        latin:additionalMoreKeys="\@"
-        latin:moreKeys="!text/more_keys_for_symbols_2" />
-    <Key
-        latin:keySpec="3"
-        latin:additionalMoreKeys="\#"
-        latin:moreKeys="!text/more_keys_for_symbols_3" />
-    <Key
-        latin:keySpec="4"
-        latin:additionalMoreKeys="$"
-        latin:moreKeys="!text/more_keys_for_symbols_4" />
-    <Key
-        latin:keySpec="5"
-        latin:additionalMoreKeys="\\%"
-        latin:moreKeys="!text/more_keys_for_symbols_5" />
-    <Key
-        latin:keySpec="6"
-        latin:additionalMoreKeys="^"
-        latin:moreKeys="!text/more_keys_for_symbols_6" />
-    <Key
-        latin:keySpec="7"
-        latin:additionalMoreKeys="&amp;"
-        latin:moreKeys="!text/more_keys_for_symbols_7" />
-    <Key
-        latin:keySpec="8"
-        latin:additionalMoreKeys="*"
-        latin:moreKeys="!text/more_keys_for_symbols_8" />
-    <Key
-        latin:keySpec="9"
-        latin:additionalMoreKeys="("
-        latin:moreKeys="!text/more_keys_for_symbols_9" />
-    <Key
-        latin:keySpec="0"
-        latin:additionalMoreKeys=")"
-        latin:moreKeys="!text/more_keys_for_symbols_0" />
-    <!-- U+2013: "–" EN DASH
-         U+2014: "—" EM DASH
-         U+00B7: "·" MIDDLE DOT -->
-    <Key
-        latin:keySpec="-"
-        latin:additionalMoreKeys="_"
-        latin:moreKeys="&#x2013;,&#x2014;,&#x00B7;" />
-    <!-- U+221E: "∞" INFINITY
-         U+2260: "≠" NOT EQUAL TO
-         U+2248: "≈" ALMOST EQUAL TO -->
-    <Key
-        latin:keySpec="="
-        latin:additionalMoreKeys="+"
-        latin:moreKeys="!fixedColumnOrder!4,&#x221E;,&#x2260;,&#x2248;,%" />
+    <switch>
+        <case
+            latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted|alphabetShiftLocked"
+        >
+            <Key
+                latin:keySpec="`"
+                latin:additionalMoreKeys="~" />
+            <Key
+                latin:keySpec="1"
+                latin:additionalMoreKeys="!,!text/more_keys_for_exclamation"
+                latin:moreKeys="!text/more_keys_for_symbols_1" />
+            <Key
+                latin:keySpec="2"
+                latin:additionalMoreKeys="\@"
+                latin:moreKeys="!text/more_keys_for_symbols_2" />
+            <Key
+                latin:keySpec="3"
+                latin:additionalMoreKeys="\#"
+                latin:moreKeys="!text/more_keys_for_symbols_3" />
+            <Key
+                latin:keySpec="4"
+                latin:additionalMoreKeys="$"
+                latin:moreKeys="!text/more_keys_for_symbols_4" />
+            <Key
+                latin:keySpec="5"
+                latin:additionalMoreKeys="\\%"
+                latin:moreKeys="!text/more_keys_for_symbols_5" />
+            <Key
+                latin:keySpec="6"
+                latin:additionalMoreKeys="^"
+                latin:moreKeys="!text/more_keys_for_symbols_6" />
+            <Key
+                latin:keySpec="7"
+                latin:additionalMoreKeys="&amp;"
+                latin:moreKeys="!text/more_keys_for_symbols_7" />
+            <Key
+                latin:keySpec="8"
+                latin:additionalMoreKeys="*"
+                latin:moreKeys="!text/more_keys_for_symbols_8" />
+            <Key
+                latin:keySpec="9"
+                latin:additionalMoreKeys="("
+                latin:moreKeys="!text/more_keys_for_symbols_9" />
+            <Key
+                latin:keySpec="0"
+                latin:additionalMoreKeys=")"
+                latin:moreKeys="!text/more_keys_for_symbols_0" />
+            <!-- U+2013: "–" EN DASH
+                 U+2014: "—" EM DASH
+                 U+00B7: "·" MIDDLE DOT -->
+            <Key
+                latin:keySpec="-"
+                latin:additionalMoreKeys="_"
+                latin:moreKeys="&#x2013;,&#x2014;,&#x00B7;" />
+            <!-- U+221E: "∞" INFINITY
+                 U+2260: "≠" NOT EQUAL TO
+                 U+2248: "≈" ALMOST EQUAL TO -->
+            <Key
+                latin:keySpec="="
+                latin:additionalMoreKeys="+"
+                latin:moreKeys="!fixedColumnOrder!4,&#x221E;,&#x2260;,&#x2248;,%" />
+        </case>
+        <!-- keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLockShifted" -->
+        <default>
+            <include
+                 latin:keyboardLayout="@xml/rowkeys_pcqwerty1_shift" />
+        </default>
+    </switch>
 </merge>
diff --git a/java/res/xml/rows_pcqwerty.xml b/java/res/xml/rows_pcqwerty.xml
index 8846989..a5ed745 100644
--- a/java/res/xml/rows_pcqwerty.xml
+++ b/java/res/xml/rows_pcqwerty.xml
@@ -26,19 +26,8 @@
     <Row
         latin:keyWidth="7.692%p"
     >
-        <switch>
-            <case
-                latin:keyboardLayoutSetElement="alphabet|alphabetAutomaticShifted"
-            >
-                <include
-                    latin:keyboardLayout="@xml/rowkeys_pcqwerty1" />
-            </case>
-            <!-- keyboardLayoutSetElement="alphabetManualShifted|alphabetShiftLocked|alphabetShiftLockShifted" -->
-            <default>
-                <include
-                     latin:keyboardLayout="@xml/rowkeys_pcqwerty1_shift" />
-            </default>
-        </switch>
+        <include
+            latin:keyboardLayout="@xml/rowkeys_pcqwerty1" />
     </Row>
     <Row
         latin:keyWidth="7.692%p"