diff --git a/java/src/com/android/inputmethod/keyboard/Key.java b/java/src/com/android/inputmethod/keyboard/Key.java
index 6ad791b..45ed34e 100644
--- a/java/src/com/android/inputmethod/keyboard/Key.java
+++ b/java/src/com/android/inputmethod/keyboard/Key.java
@@ -493,21 +493,21 @@
         }
     }
 
-    public int selectTextSize(KeyboardView.KeyDrawParams params) {
+    public int selectTextSize(int letterSize, int largeLetterSize, int labelSize,
+            int largeLabelSize, int hintLabelSize) {
         switch (mLabelFlags & LABEL_FLAGS_FOLLOW_KEY_TEXT_RATIO_MASK) {
-        case LABEL_FLAGS_FOLLOW_KEY_LARGE_LETTER_RATIO:
-            return params.mKeyLargeLetterSize;
         case LABEL_FLAGS_FOLLOW_KEY_LETTER_RATIO:
-            return params.mKeyLetterSize;
+            return letterSize;
+        case LABEL_FLAGS_FOLLOW_KEY_LARGE_LETTER_RATIO:
+            return largeLetterSize;
         case LABEL_FLAGS_FOLLOW_KEY_LABEL_RATIO:
-            return params.mKeyLabelSize;
+            return labelSize;
         case LABEL_FLAGS_FOLLOW_KEY_LARGE_LABEL_RATIO:
-            return params.mKeyLargeLabelSize;
+            return largeLabelSize;
         case LABEL_FLAGS_FOLLOW_KEY_HINT_LABEL_RATIO:
-            return params.mKeyHintLabelSize;
+            return hintLabelSize;
         default: // No follow key ratio flag specified.
-            return StringUtils.codePointCount(mLabel) == 1
-                    ? params.mKeyLetterSize : params.mKeyLabelSize;
+            return StringUtils.codePointCount(mLabel) == 1 ? letterSize : labelSize;
         }
     }
 
diff --git a/java/src/com/android/inputmethod/keyboard/KeyboardView.java b/java/src/com/android/inputmethod/keyboard/KeyboardView.java
index 80e1c7a..2045b0c 100644
--- a/java/src/com/android/inputmethod/keyboard/KeyboardView.java
+++ b/java/src/com/android/inputmethod/keyboard/KeyboardView.java
@@ -573,7 +573,9 @@
             final String label = key.mLabel;
             // For characters, use large font. For labels like "Done", use smaller font.
             paint.setTypeface(key.selectTypeface(params.mKeyTextStyle));
-            final int labelSize = key.selectTextSize(params);
+            final int labelSize = key.selectTextSize(params.mKeyLetterSize,
+                    params.mKeyLargeLetterSize, params.mKeyLabelSize, params.mKeyLargeLabelSize,
+                    params.mKeyHintLabelSize);
             paint.setTextSize(labelSize);
             final float labelCharHeight = getCharHeight(KEY_LABEL_REFERENCE_CHAR, paint);
             final float labelCharWidth = getCharWidth(KEY_LABEL_REFERENCE_CHAR, paint);
