diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 7903820f785a6fcb62c93708fe729880bee54924..2ee5a38197367d34442596206f7c0ec5a320bfa8 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -503,7 +503,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
 
     private void initSuggest() {
         final String localeStr = mSubtypeSwitcher.getInputLocaleStr();
-        final Locale keyboardLocale = LocaleUtils.constructLocaleFromString(localeStr);
+        final Locale keyboardLocale = mSubtypeSwitcher.getInputLocale();
 
         final Resources res = mResources;
         final Locale savedLocale = LocaleUtils.setSystemLocale(res, keyboardLocale);
@@ -567,8 +567,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
     }
 
     /* package private */ void resetSuggestMainDict() {
-        final String localeStr = mSubtypeSwitcher.getInputLocaleStr();
-        final Locale keyboardLocale = LocaleUtils.constructLocaleFromString(localeStr);
+        final Locale keyboardLocale = mSubtypeSwitcher.getInputLocale();
         int mainDicResId = DictionaryFactory.getMainDictionaryResourceId(mResources);
         mSuggest.resetMainDict(this, mainDicResId, keyboardLocale);
     }
@@ -1995,7 +1994,7 @@ public class LatinIME extends InputMethodServiceCompatWrapper implements Keyboar
     }
 
     private void addToUserHistoryDictionary(final CharSequence suggestion) {
-        if (suggestion == null || suggestion.length() < 1) return;
+        if (TextUtils.isEmpty(suggestion)) return;
 
         // Only auto-add to dictionary if auto-correct is ON. Otherwise we'll be
         // adding words in situations where the user or application really didn't
diff --git a/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java b/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java
index ffbbf9bb8833a4100f4ac9f54c221b906c81d46a..3524c72f6d6b8f669b4785b19a99a4368e69da2f 100644
--- a/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java
+++ b/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java
@@ -47,13 +47,13 @@ public class SubtypeSwitcher {
     private static final String TAG = SubtypeSwitcher.class.getSimpleName();
 
     public static final String KEYBOARD_MODE = "keyboard";
-    private static final char LOCALE_SEPARATER = '_';
+    private static final char LOCALE_SEPARATOR = '_';
     private static final String VOICE_MODE = "voice";
     private static final String SUBTYPE_EXTRAVALUE_REQUIRE_NETWORK_CONNECTIVITY =
             "requireNetworkConnectivity";
 
     private final TextUtils.SimpleStringSplitter mLocaleSplitter =
-            new TextUtils.SimpleStringSplitter(LOCALE_SEPARATER);
+            new TextUtils.SimpleStringSplitter(LOCALE_SEPARATOR);
 
     private static final SubtypeSwitcher sInstance = new SubtypeSwitcher();
     private /* final */ LatinIME mService;