Directly use BaseIndexableProvider

- Add function getXmlResourceId, Fragments don't need to write
xml resource id twice.
- Remove getPreferenceControllers from Indexable.java. Because it will
move to SettingsLib later for other apps which don't need this function

Bug: 135053028
Test: robolectric
Change-Id: I1e74519aecdea3dde64a5aea79f08d766dbc0003
This commit is contained in:
Raff Tsai
2019-09-19 17:06:45 +08:00
parent 5ff9517f23
commit ac3e0d0988
122 changed files with 199 additions and 440 deletions

View File

@@ -22,7 +22,6 @@ import android.content.ComponentName;
import android.content.ContentResolver;
import android.content.Context;
import android.content.pm.PackageManager;
import android.provider.SearchIndexableResource;
import android.provider.Settings;
import android.text.TextUtils;
import android.view.inputmethod.InputMethodInfo;
@@ -81,7 +80,7 @@ public class LanguageAndInputSettings extends DashboardFragment {
@Override
protected int getPreferenceScreenResId() {
return R.xml.language_and_input;
return SEARCH_INDEX_DATA_PROVIDER.getXmlResourceId();
}
@Override
@@ -161,7 +160,7 @@ public class LanguageAndInputSettings extends DashboardFragment {
public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY
= (activity, summaryLoader) -> new SummaryProvider(activity, summaryLoader);
public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
new BaseSearchIndexProvider(R.xml.language_and_input) {
@Override