diff --git a/java/src/com/android/inputmethod/keyboard/emoji/EmojiPageKeyboardView.java b/java/src/com/android/inputmethod/keyboard/emoji/EmojiPageKeyboardView.java
index 80ba60c82c44aeed40df660f5dada2ebf8320eaf..a34dbef4be099168a0586b8862c876a792e28e08 100644
--- a/java/src/com/android/inputmethod/keyboard/emoji/EmojiPageKeyboardView.java
+++ b/java/src/com/android/inputmethod/keyboard/emoji/EmojiPageKeyboardView.java
@@ -55,7 +55,22 @@ final class EmojiPageKeyboardView extends KeyboardView implements
     private OnKeyEventListener mListener = EMPTY_LISTENER;
     private final KeyDetector mKeyDetector = new KeyDetector();
     private final GestureDetector mGestureDetector;
-    private KeyboardAccessibilityDelegate<EmojiPageKeyboardView> mAccessibilityDelegate;
+    private EmojiPageKeyboardAccessibilityDelegate mAccessibilityDelegate;
+
+    private static final class EmojiPageKeyboardAccessibilityDelegate
+            extends KeyboardAccessibilityDelegate<EmojiPageKeyboardView> {
+        public EmojiPageKeyboardAccessibilityDelegate(final EmojiPageKeyboardView keyboardView,
+                final KeyDetector keyDetector) {
+            super(keyboardView, keyDetector);
+        }
+
+        @Override
+        protected void simulateTouchEvent(int touchAction, MotionEvent hoverEvent) {
+            final MotionEvent touchEvent = synthesizeTouchEvent(touchAction, hoverEvent);
+            mKeyboardView.onTouchEvent(touchEvent);
+            touchEvent.recycle();
+        }
+    }
 
     public EmojiPageKeyboardView(final Context context, final AttributeSet attrs) {
         this(context, attrs, R.attr.keyboardViewStyle);
@@ -82,7 +97,8 @@ final class EmojiPageKeyboardView extends KeyboardView implements
         mKeyDetector.setKeyboard(keyboard, 0 /* correctionX */, 0 /* correctionY */);
         if (AccessibilityUtils.getInstance().isAccessibilityEnabled()) {
             if (mAccessibilityDelegate == null) {
-                mAccessibilityDelegate = new KeyboardAccessibilityDelegate<>(this, mKeyDetector);
+                mAccessibilityDelegate = new EmojiPageKeyboardAccessibilityDelegate(
+                        this, mKeyDetector);
             }
             mAccessibilityDelegate.setKeyboard(keyboard);
         } else {
diff --git a/java/src/com/android/inputmethod/latin/Constants.java b/java/src/com/android/inputmethod/latin/Constants.java
index fa51436de8c2e95b086e5a8bd87e8c9c19fd50ab..f9339361a86dd5d8478120fb9e469815516c5b51 100644
--- a/java/src/com/android/inputmethod/latin/Constants.java
+++ b/java/src/com/android/inputmethod/latin/Constants.java
@@ -263,10 +263,10 @@ public final class Constants {
         case CODE_ENTER: return "enter";
         case CODE_SPACE: return "space";
         default:
-            if (code < CODE_SPACE) return String.format("\\u%02x", code);
+            if (code < CODE_SPACE) return String.format("\\u%02X", code);
             if (code < 0x100) return String.format("%c", code);
-            if (code < 0x10000) return String.format("\\u04x", code);
-            return String.format("\\U%05x", code);
+            if (code < 0x10000) return String.format("\\u%04X", code);
+            return String.format("\\U%05X", code);
         }
     }