Fix long press behavior of  akye that has altCode defined

This issue has been introduced by I2bd4daf2

Change-Id: Ie10b3e0bb360986597a0f5a8e5b8253400f924c4
diff --git a/java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java b/java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java
index 89dad7b..e7676c6 100644
--- a/java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java
+++ b/java/src/com/android/inputmethod/keyboard/LatinKeyboardView.java
@@ -481,8 +481,11 @@
      */
     protected boolean onLongPress(Key parentKey, PointerTracker tracker) {
         final int primaryCode = parentKey.mCode;
-        if (parentKey.mAltCode != Keyboard.CODE_UNSPECIFIED) {
-            // Long press on a key that has altCode defined.
+        if (parentKey.mMoreKeys == null && !parentKey.altCodeWhileTyping()
+                && parentKey.mAltCode != Keyboard.CODE_UNSPECIFIED) {
+            // Long press on a key that has no more keys and not altCodeWhileTyping but altCode
+            // defined, such as "0 +" key on phone layout and "/ :" key on datetime
+            // layout.
             tracker.onLongPressed();
             invokeCodeInput(parentKey.mAltCode);
             invokeReleaseKey(primaryCode);