diff --git a/java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityDelegate.java b/java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityDelegate.java
index f0749a41bf2eb2ae7cb04b2d5b0907b5b2fa067c..0ebad9774ebdfe6bb2065a1fac235c2aadceef6c 100644
--- a/java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityDelegate.java
+++ b/java/src/com/android/inputmethod/accessibility/KeyboardAccessibilityDelegate.java
@@ -16,6 +16,7 @@
 
 package com.android.inputmethod.accessibility;
 
+import android.content.Context;
 import android.os.SystemClock;
 import android.support.v4.view.AccessibilityDelegateCompat;
 import android.support.v4.view.ViewCompat;
@@ -69,6 +70,19 @@ public class KeyboardAccessibilityDelegate<KV extends KeyboardView>
         return mKeyboard;
     }
 
+    /**
+     * Sends a window state change event with the specified string resource id.
+     *
+     * @param resId The string resource id of the text to send with the event.
+     */
+    protected void sendWindowStateChanged(final int resId) {
+        if (resId == 0) {
+            return;
+        }
+        final Context context = mKeyboardView.getContext();
+        sendWindowStateChanged(context.getString(resId));
+    }
+
     /**
      * Sends a window state change event with the specified text.
      *
diff --git a/java/src/com/android/inputmethod/accessibility/MainKeyboardAccessibilityDelegate.java b/java/src/com/android/inputmethod/accessibility/MainKeyboardAccessibilityDelegate.java
index 443f793a158155d951920a0cf95043807bb19cbe..ec6bb0156c86088a3c51231241b511002dd84c4e 100644
--- a/java/src/com/android/inputmethod/accessibility/MainKeyboardAccessibilityDelegate.java
+++ b/java/src/com/android/inputmethod/accessibility/MainKeyboardAccessibilityDelegate.java
@@ -163,17 +163,13 @@ public final class MainKeyboardAccessibilityDelegate
         default:
             return;
         }
-        final String text = mKeyboardView.getContext().getString(resId);
-        sendWindowStateChanged(text);
+        sendWindowStateChanged(resId);
     }
 
     /**
      * Announces that the keyboard has been hidden.
      */
     private void announceKeyboardHidden() {
-        final Context context = mKeyboardView.getContext();
-        final String text = context.getString(R.string.announce_keyboard_hidden);
-
-        sendWindowStateChanged(text);
+        sendWindowStateChanged(R.string.announce_keyboard_hidden);
     }
 }