diff --git a/tests/src/com/android/inputmethod/keyboard/layout/expected/ActualKeyboardBuilder.java b/tests/src/com/android/inputmethod/keyboard/layout/expected/ActualKeyboardBuilder.java index b918d47f8..577f43e17 100644 --- a/tests/src/com/android/inputmethod/keyboard/layout/expected/ActualKeyboardBuilder.java +++ b/tests/src/com/android/inputmethod/keyboard/layout/expected/ActualKeyboardBuilder.java @@ -24,7 +24,6 @@ import com.android.inputmethod.latin.utils.CollectionUtils; import com.android.inputmethod.latin.utils.StringUtils; import java.util.ArrayList; -import java.util.Arrays; import java.util.Collections; import java.util.Comparator; @@ -44,15 +43,27 @@ public final class ActualKeyboardBuilder extends AbstractKeyboardBuilder { } }; + private static ArrayList filterOutSpacerAndSortKeys(final Key[] keys) { + final ArrayList filteredKeys = CollectionUtils.newArrayList(); + for (final Key key : keys) { + if (key.isSpacer()) { + continue; + } + filteredKeys.add(key); + } + Collections.sort(filteredKeys, ROW_COLUMN_COMPARATOR); + return filteredKeys; + } + /** * Create the keyboard that consists of the array of rows of the actual keyboard's keys. * @param keys the array of keys of the actual keyboard. * @return the actual keyboard grouped with rows. */ public static Key[][] buildKeyboard(final Key[] keys) { - // Sort keys from top-left to bottom-right order to prepare to create rows. - final ArrayList sortedKeys = CollectionUtils.newArrayList(Arrays.asList(keys)); - Collections.sort(sortedKeys, ROW_COLUMN_COMPARATOR); + // Filter out spacer and sort keys from top-left to bottom-right order to prepare to + // create rows. + final ArrayList sortedKeys = filterOutSpacerAndSortKeys(keys); // Grouping keys into rows. final ArrayList> rows = CollectionUtils.newArrayList();