Allow an empty keySpec for Spacer

Bug: 12933248
Change-Id: I76432556caf319ce23c1fb7fa3d6b94118e64cf8
diff --git a/java/src/com/android/inputmethod/keyboard/Key.java b/java/src/com/android/inputmethod/keyboard/Key.java
index 1c8bada..aade490 100644
--- a/java/src/com/android/inputmethod/keyboard/Key.java
+++ b/java/src/com/android/inputmethod/keyboard/Key.java
@@ -316,8 +316,10 @@
         mActionFlags = actionFlags;
 
         final String keySpec = style.getString(keyAttr, R.styleable.Keyboard_Key_keySpec);
-        if (TextUtils.isEmpty(keySpec)) {
-            throw new RuntimeException("Empty keySpec");
+        // Note: {@link Spacer} has an empty keySpec.
+        // TODO: Create a Key constructor that parses only key geometries and share it with Spacer.
+        if (TextUtils.isEmpty(keySpec) && !(this instanceof Spacer)) {
+            throw new RuntimeException("Empty keySpec found in " + getClass().getName());
         }
 
         mIconId = KeySpecParser.getIconId(keySpec);