diff --git a/res/values/strings.xml b/res/values/strings.xml
index 536aa85784a..4603a8e6cb2 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7383,6 +7383,9 @@
volte, advanced calling, 4g calling
+
+ add language, add a language
+
Default sound
diff --git a/src/com/android/settings/localepicker/LocaleListEditor.java b/src/com/android/settings/localepicker/LocaleListEditor.java
index bee51529561..0666e0bebeb 100644
--- a/src/com/android/settings/localepicker/LocaleListEditor.java
+++ b/src/com/android/settings/localepicker/LocaleListEditor.java
@@ -20,8 +20,10 @@ import static android.os.UserManager.DISALLOW_CONFIG_LOCALE;
import android.app.Activity;
import android.app.settings.SettingsEnums;
+import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
+import android.content.res.Resources;
import android.os.Bundle;
import android.os.LocaleList;
import android.view.LayoutInflater;
@@ -39,6 +41,9 @@ import com.android.internal.app.LocalePicker;
import com.android.internal.app.LocaleStore;
import com.android.settings.R;
import com.android.settings.RestrictedSettingsFragment;
+import com.android.settings.search.BaseSearchIndexProvider;
+import com.android.settingslib.search.SearchIndexable;
+import com.android.settingslib.search.SearchIndexableRaw;
import java.util.ArrayList;
import java.util.List;
@@ -47,6 +52,7 @@ import java.util.Locale;
/**
* Drag-and-drop editor for the user-ordered locale lists.
*/
+@SearchIndexable
public class LocaleListEditor extends RestrictedSettingsFragment {
protected static final String INTENT_LOCALE_KEY = "localeInfo";
@@ -55,6 +61,8 @@ public class LocaleListEditor extends RestrictedSettingsFragment {
private static final int MENU_ID_REMOVE = Menu.FIRST + 1;
private static final int REQUEST_LOCALE_PICKER = 0;
+ private static final String INDEX_KEY_ADD_LANGUAGE = "add_language";
+
private LocaleDragAndDropAdapter mAdapter;
private Menu mMenu;
private View mAddLanguage;
@@ -304,4 +312,20 @@ public class LocaleListEditor extends RestrictedSettingsFragment {
menuItemRemove.setVisible(hasMultipleLanguages && !mIsUiRestricted);
}
}
+
+ public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
+ new BaseSearchIndexProvider() {
+ @Override
+ public List getRawDataToIndex(Context context,
+ boolean enabled) {
+ final Resources res = context.getResources();
+ final List indexRaws = new ArrayList<>();
+ final SearchIndexableRaw raw = new SearchIndexableRaw(context);
+ raw.key = INDEX_KEY_ADD_LANGUAGE;
+ raw.title = res.getString(R.string.add_a_language);
+ raw.keywords = res.getString(R.string.keywords_add_language);
+ indexRaws.add(raw);
+ return indexRaws;
+ }
+ };
}
diff --git a/tests/robotests/assets/grandfather_not_implementing_index_provider b/tests/robotests/assets/grandfather_not_implementing_index_provider
index 42ee156a7d0..013e596f247 100644
--- a/tests/robotests/assets/grandfather_not_implementing_index_provider
+++ b/tests/robotests/assets/grandfather_not_implementing_index_provider
@@ -54,7 +54,6 @@ com.android.settings.IccLockSettings
com.android.settings.inputmethod.InputMethodAndSubtypeEnabler
com.android.settings.inputmethod.KeyboardLayoutPickerFragment
com.android.settings.inputmethod.SpellCheckersSettings
-com.android.settings.localepicker.LocaleListEditor
com.android.settings.location.LocationPersonalSettings
com.android.settings.location.LocationWorkProfileSettings
com.android.settings.network.ApnEditor