Merge "Rename keyboard XML files"
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index 3ec1fe2..d96b858 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -72,6 +72,7 @@
 
 import java.io.FileDescriptor;
 import java.io.PrintWriter;
+import java.util.List;
 import java.util.Locale;
 
 /**
@@ -979,8 +980,11 @@
                 return;
             }
 
+            final List<CharSequence> applicationSuggestedWords =
+                    SuggestedWords.Builder.getFromApplicationSpecifiedCompletions(
+                            applicationSpecifiedCompletions);
             SuggestedWords.Builder builder = new SuggestedWords.Builder()
-                    .setApplicationSpecifiedCompletions(applicationSpecifiedCompletions)
+                    .addWords(applicationSuggestedWords, null)
                     .setTypedWordValid(false)
                     .setHasMinimalSuggestion(false);
             // When in fullscreen mode, show completions generated by the application
diff --git a/java/src/com/android/inputmethod/latin/SuggestedWords.java b/java/src/com/android/inputmethod/latin/SuggestedWords.java
index 9aa3ebc..8bfe769 100644
--- a/java/src/com/android/inputmethod/latin/SuggestedWords.java
+++ b/java/src/com/android/inputmethod/latin/SuggestedWords.java
@@ -122,7 +122,8 @@
             return addWord(word, info);
         }
 
-        private Builder addWord(CharSequence word, SuggestedWordInfo suggestedWordInfo) {
+        /* package for tests */
+        Builder addWord(CharSequence word, SuggestedWordInfo suggestedWordInfo) {
             if (!TextUtils.isEmpty(word)) {
                 mWords.add(word);
                 // It's okay if suggestedWordInfo is null since it's checked where it's used.
@@ -131,11 +132,13 @@
             return this;
         }
 
-        public Builder setApplicationSpecifiedCompletions(CompletionInfo[] infos) {
+        public static List<CharSequence> getFromApplicationSpecifiedCompletions(
+                final CompletionInfo[] infos) {
+            final ArrayList<CharSequence> result = new ArrayList<CharSequence>();
             for (CompletionInfo info : infos) {
-                if (null != info) addWord(info.getText());
+                if (null != info) result.add(info.getText());
             }
-            return this;
+            return result;
         }
 
         public Builder setTypedWordValid(boolean typedWordValid) {