Share preference controller in AdavancedAppSettings search

Change-Id: I4283f35a91ce10e01fa4c9d1cf626b1d2a30082c
Fix: 62141436
Test: make RunSettingsRoboTests
This commit is contained in:
Fan Zhang
2017-05-30 12:47:17 -07:00
parent 3cad98f69e
commit 3541f597a4
2 changed files with 25 additions and 17 deletions

View File

@@ -18,8 +18,8 @@ package com.android.settings.applications;
import android.app.Activity; import android.app.Activity;
import android.content.Context; import android.content.Context;
import android.provider.SearchIndexableResource; import android.provider.SearchIndexableResource;
import android.text.TextUtils; import android.text.TextUtils;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R; import com.android.settings.R;
import com.android.settings.applications.defaultapps.DefaultBrowserPreferenceController; import com.android.settings.applications.defaultapps.DefaultBrowserPreferenceController;
@@ -57,6 +57,15 @@ public class AdvancedAppSettings extends DashboardFragment {
@Override @Override
protected List<PreferenceController> getPreferenceControllers(Context context) { protected List<PreferenceController> getPreferenceControllers(Context context) {
return buildPreferenceControllers(context);
}
@Override
public int getMetricsCategory() {
return MetricsEvent.APPLICATIONS_ADVANCED;
}
private static List<PreferenceController> buildPreferenceControllers(Context context) {
final List<PreferenceController> controllers = new ArrayList<>(); final List<PreferenceController> controllers = new ArrayList<>();
controllers.add(new DefaultBrowserPreferenceController(context)); controllers.add(new DefaultBrowserPreferenceController(context));
controllers.add(new DefaultWorkBrowserPreferenceController(context)); controllers.add(new DefaultWorkBrowserPreferenceController(context));
@@ -68,11 +77,6 @@ public class AdvancedAppSettings extends DashboardFragment {
return controllers; return controllers;
} }
@Override
public int getMetricsCategory() {
return MetricsEvent.APPLICATIONS_ADVANCED;
}
public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
new BaseSearchIndexProvider() { new BaseSearchIndexProvider() {
@Override @Override
@@ -94,6 +98,11 @@ public class AdvancedAppSettings extends DashboardFragment {
.getPreferenceKey()); .getPreferenceKey());
return keys; return keys;
} }
@Override
public List<PreferenceController> getPreferenceControllers(Context context) {
return buildPreferenceControllers(context);
}
}; };
static class SummaryProvider implements SummaryLoader.SummaryProvider { static class SummaryProvider implements SummaryLoader.SummaryProvider {
@@ -118,10 +127,10 @@ public class AdvancedAppSettings extends DashboardFragment {
return; return;
} }
CharSequence summary = concatSummaryText( CharSequence summary = concatSummaryText(
mDefaultSmsPreferenceController.getDefaultAppLabel(), mDefaultSmsPreferenceController.getDefaultAppLabel(),
mDefaultBrowserPreferenceController.getDefaultAppLabel()); mDefaultBrowserPreferenceController.getDefaultAppLabel());
summary = concatSummaryText(summary, summary = concatSummaryText(summary,
mDefaultPhonePreferenceController.getDefaultAppLabel()); mDefaultPhonePreferenceController.getDefaultAppLabel());
if (!TextUtils.isEmpty(summary)) { if (!TextUtils.isEmpty(summary)) {
mSummaryLoader.setSummary(this, summary); mSummaryLoader.setSummary(this, summary);
} }
@@ -139,11 +148,11 @@ public class AdvancedAppSettings extends DashboardFragment {
} }
public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY = public static final SummaryLoader.SummaryProviderFactory SUMMARY_PROVIDER_FACTORY =
new SummaryLoader.SummaryProviderFactory() { new SummaryLoader.SummaryProviderFactory() {
@Override @Override
public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity, public SummaryLoader.SummaryProvider createSummaryProvider(Activity activity,
SummaryLoader summaryLoader) { SummaryLoader summaryLoader) {
return new AdvancedAppSettings.SummaryProvider(activity, summaryLoader); return new AdvancedAppSettings.SummaryProvider(activity, summaryLoader);
} }
}; };
} }

View File

@@ -1,2 +1 @@
com.android.settings.applications.AdvancedAppSettings
com.android.settings.fuelgauge.PowerUsageSummary com.android.settings.fuelgauge.PowerUsageSummary