diff --git a/java/src/com/android/inputmethod/latin/LatinKeyboard.java b/java/src/com/android/inputmethod/latin/LatinKeyboard.java
index 1a9350a..2dd0338 100644
--- a/java/src/com/android/inputmethod/latin/LatinKeyboard.java
+++ b/java/src/com/android/inputmethod/latin/LatinKeyboard.java
@@ -292,9 +292,6 @@
             if (mF1Key != null) {
                 mF1Key.icon = mMicIcon;
             }
-            if (mSpaceKey != null) {
-                mSpaceKey.icon = mSpaceIcon;
-            }
         } else {
             mShiftLockIcon = mRes.getDrawable(R.drawable.sym_keyboard_shift_locked);
             mSpaceIcon = mRes.getDrawable(R.drawable.sym_keyboard_space);
@@ -303,9 +300,10 @@
             if (mF1Key != null) {
                 mF1Key.icon = mMicIcon;
             }
-            if (mSpaceKey != null) {
-                mSpaceKey.icon = mSpaceIcon;
-            }
+        }
+        if (mSpaceKey != null) {
+            mSpaceKey.icon = mSpaceIcon;
+            updateSpaceBarForLocale(f);
         }
     }
 
@@ -346,7 +344,7 @@
         }
     }
 
-    private void updateSpaceBarForLocale() {
+    private void updateSpaceBarForLocale(boolean isBlack) {
         if (mLocale != null) {
             // Create the graphic for spacebar
             Bitmap buffer = Bitmap.createBitmap(mSpaceKey.width, mSpaceIcon.getIntrinsicHeight(),
@@ -356,7 +354,8 @@
             mSpaceKey.icon = new BitmapDrawable(mRes, buffer);
             mSpaceKey.repeatable = mLanguageSwitcher.getLocaleCount() < 2;
         } else {
-            mSpaceKey.icon = mRes.getDrawable(R.drawable.sym_keyboard_space);
+            mSpaceKey.icon = isBlack ? mRes.getDrawable(R.drawable.sym_bkeyboard_space)
+                : mRes.getDrawable(R.drawable.sym_keyboard_space);
             mSpaceKey.repeatable = true;
         }
     }
@@ -461,7 +460,7 @@
         }
         if (mLocale != null && mLocale.equals(locale)) return;
         mLocale = locale;
-        updateSpaceBarForLocale();
+        updateSpaceBarForLocale(mIsBlackSym);
     }
 
     boolean isCurrentlyInSpace() {
