diff --git a/java/src/com/android/inputmethod/latin/WordComposer.java b/java/src/com/android/inputmethod/latin/WordComposer.java
index e97cb24..8d8e351 100644
--- a/java/src/com/android/inputmethod/latin/WordComposer.java
+++ b/java/src/com/android/inputmethod/latin/WordComposer.java
@@ -84,11 +84,27 @@
      */
     public void add(int primaryCode, int[] codes) {
         mTypedWord.append((char) primaryCode);
+        correctPrimaryJuxtapos(primaryCode, codes);
         mCodes.add(codes);
         if (Character.isUpperCase((char) primaryCode)) mCapsCount++;
     }
 
     /**
+     * Swaps the first and second values in the codes array if the primary code is not the first
+     * value in the array but the second. This happens when the preferred key is not the key that
+     * the user released the finger on.
+     * @param primaryCode the preferred character
+     * @param codes array of codes based on distance from touch point
+     */
+    private void correctPrimaryJuxtapos(int primaryCode, int[] codes) {
+        if (codes.length < 2) return;
+        if (codes[0] > 0 && codes[1] > 0 && codes[0] != primaryCode && codes[1] == primaryCode) {
+            codes[1] = codes[0];
+            codes[0] = primaryCode;
+        }
+    }
+
+    /**
      * Delete the last keystroke as a result of hitting backspace.
      */
     public void deleteLast() {
