From 758c3ff8e98867a9d0132dacf1291fb653cbc354 Mon Sep 17 00:00:00 2001 From: Fabrice Di Meglio Date: Thu, 10 Apr 2014 13:47:30 -0700 Subject: [PATCH] Fix bug #13962001 Search - need to finish indexing "Data usage" Settings - index missing strings Change-Id: I015452b58bf7dc576bce8fee03b55b38c0094097 --- src/com/android/settings/DataUsageSummary.java | 52 +++++++++++++++++++++- .../settings/search/SearchIndexableResources.java | 7 +-- 2 files changed, 55 insertions(+), 4 deletions(-) diff --git a/src/com/android/settings/DataUsageSummary.java b/src/com/android/settings/DataUsageSummary.java index fe09c6a686..9b6207b3a3 100644 --- a/src/com/android/settings/DataUsageSummary.java +++ b/src/com/android/settings/DataUsageSummary.java @@ -86,6 +86,7 @@ import android.os.ServiceManager; import android.os.SystemProperties; import android.os.UserHandle; import android.preference.Preference; +import android.provider.SearchIndexableResource; import android.telephony.TelephonyManager; import android.text.TextUtils; import android.text.format.DateUtils; @@ -133,6 +134,8 @@ import com.android.settings.net.NetworkPolicyEditor; import com.android.settings.net.SummaryForAllUidLoader; import com.android.settings.net.UidDetail; import com.android.settings.net.UidDetailProvider; +import com.android.settings.search.Indexable; +import com.android.settings.search.SearchIndexableRaw; import com.android.settings.widget.ChartDataUsageView; import com.android.settings.widget.ChartDataUsageView.DataUsageChartListener; import com.android.settings.widget.PieChartView; @@ -149,7 +152,7 @@ import java.util.Locale; * Panel showing data usage history across various networks, including options * to inspect based on usage cycle and control through {@link NetworkPolicy}. */ -public class DataUsageSummary extends Fragment { +public class DataUsageSummary extends Fragment implements Indexable { private static final String TAG = "DataUsage"; private static final boolean LOGD = false; @@ -2380,4 +2383,51 @@ public class DataUsageSummary extends Fragment { summary.setVisibility(View.VISIBLE); summary.setText(string); } + + /** + * For search + */ + public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = + new SearchIndexProvider() { + + @Override + public List getXmlResourcesToIndex( + Context context, boolean enabled) { + return null; + } + + @Override + public List getRawDataToIndex(Context context, boolean enabled) { + final List result = new ArrayList(); + + final Resources res = context.getResources(); + + // Add fragment title + SearchIndexableRaw data = new SearchIndexableRaw(context); + data.title = res.getString(R.string.data_usage_summary_title); + data.screenTitle = res.getString(R.string.data_usage_summary_title); + result.add(data); + + // Mobile data + data = new SearchIndexableRaw(context); + data.title = res.getString(R.string.data_usage_enable_mobile); + data.screenTitle = res.getString(R.string.data_usage_summary_title); + result.add(data); + + // Set mobile data limit + data = new SearchIndexableRaw(context); + data.title = res.getString(R.string.data_usage_disable_mobile_limit); + data.screenTitle = res.getString(R.string.data_usage_summary_title); + result.add(data); + + // Data usage cycke + data = new SearchIndexableRaw(context); + data.title = res.getString(R.string.data_usage_cycle); + data.screenTitle = res.getString(R.string.data_usage_summary_title); + result.add(data); + + return result; + } + }; + } diff --git a/src/com/android/settings/search/SearchIndexableResources.java b/src/com/android/settings/search/SearchIndexableResources.java index 9c0e5eaaee..6ade187e2c 100644 --- a/src/com/android/settings/search/SearchIndexableResources.java +++ b/src/com/android/settings/search/SearchIndexableResources.java @@ -17,6 +17,7 @@ package com.android.settings.search; import android.provider.SearchIndexableResource; +import com.android.settings.DataUsageSummary; import com.android.settings.DateTimeSettings; import com.android.settings.DevelopmentSettings; import com.android.settings.DeviceInfoSettings; @@ -87,10 +88,10 @@ public final class SearchIndexableResources { BluetoothSettings.class.getName(), R.drawable.ic_settings_bluetooth2)); - sResMap.put(DataUsageMeteredSettings.class.getName(), + sResMap.put(DataUsageSummary.class.getName(), new SearchIndexableResource(RANK_DATA_USAGE, - R.xml.data_usage_metered_prefs, - DataUsageMeteredSettings.class.getName(), + NO_DATA_RES_ID, + DataUsageSummary.class.getName(), R.drawable.ic_settings_data_usage)); sResMap.put(WirelessSettings.class.getName(), -- 2.11.0