diff --git a/java/src/com/android/inputmethod/latin/SuggestedWords.java b/java/src/com/android/inputmethod/latin/SuggestedWords.java
index ed6359c..549628e 100644
--- a/java/src/com/android/inputmethod/latin/SuggestedWords.java
+++ b/java/src/com/android/inputmethod/latin/SuggestedWords.java
@@ -29,7 +29,7 @@
 
     public final List<CharSequence> mWords;
     public final boolean mTypedWordValid;
-    public final boolean mHasAutoCorrectionCandidate;
+    private final boolean mHasAutoCorrectionCandidate;
     public final boolean mIsPunctuationSuggestions;
     private final List<SuggestedWordInfo> mSuggestedWordInfoList;
     private boolean mShouldBlockAutoCorrection;
@@ -69,6 +69,10 @@
         return mHasAutoCorrectionCandidate && ((size() > 1 && !mTypedWordValid) || mTypedWordValid);
     }
 
+    public boolean hasAutoCorrectionCandidate() {
+        return mHasAutoCorrectionCandidate;
+    }
+
     public boolean isPunctuationSuggestions() {
         return mIsPunctuationSuggestions;
     }
diff --git a/java/src/com/android/inputmethod/latin/Utils.java b/java/src/com/android/inputmethod/latin/Utils.java
index 47ea9ee..cd2f951 100644
--- a/java/src/com/android/inputmethod/latin/Utils.java
+++ b/java/src/com/android/inputmethod/latin/Utils.java
@@ -775,7 +775,7 @@
     }
 
     public static boolean willAutoCorrect(SuggestedWords suggestions) {
-        return !suggestions.mTypedWordValid && suggestions.mHasAutoCorrectionCandidate
+        return !suggestions.mTypedWordValid && suggestions.hasAutoCorrectionCandidate()
                 && !suggestions.shouldBlockAutoCorrection();
     }
 
diff --git a/java/src/com/android/inputmethod/latin/suggestions/SuggestionsView.java b/java/src/com/android/inputmethod/latin/suggestions/SuggestionsView.java
index 40d7826..312e29a 100644
--- a/java/src/com/android/inputmethod/latin/suggestions/SuggestionsView.java
+++ b/java/src/com/android/inputmethod/latin/suggestions/SuggestionsView.java
@@ -307,7 +307,7 @@
                 color = mColorTypedWord;
             }
             if (LatinImeLogger.sDBG) {
-                if (index == mCenterSuggestionIndex && suggestions.mHasAutoCorrectionCandidate
+                if (index == mCenterSuggestionIndex && suggestions.hasAutoCorrectionCandidate()
                         && suggestions.shouldBlockAutoCorrection()) {
                     return 0xFFFF0000;
                 }
