summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/search
diff options
context:
space:
mode:
authorJason Chiu <chiujason@google.com>2019-11-26 16:53:11 +0800
committerJason Chiu <chiujason@google.com>2019-11-27 17:11:26 +0800
commit05599b89d20839ec04e71de172d63c58f5478952 (patch)
tree97c09a2bf8a9066eeb7dd4a31f3cb5f450c0a74f /src/com/android/settings/search
parenta6198c25be73ea7870e024123fd29d2c8bc2623a (diff)
downloadpackages_apps_Settings-05599b89d20839ec04e71de172d63c58f5478952.tar.gz
packages_apps_Settings-05599b89d20839ec04e71de172d63c58f5478952.tar.bz2
packages_apps_Settings-05599b89d20839ec04e71de172d63c58f5478952.zip
Make Settings self-injected toggle switch searchable
- only skip ActivityTile - skip items that has no static title Bug: 132812768 Test: robotest Change-Id: Idb3c111966c1dd96e2886aca2c7ead3b57ba119e
Diffstat (limited to 'src/com/android/settings/search')
-rw-r--r--src/com/android/settings/search/SettingsSearchIndexablesProvider.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/com/android/settings/search/SettingsSearchIndexablesProvider.java b/src/com/android/settings/search/SettingsSearchIndexablesProvider.java
index d504d9b8ad..c619deccaa 100644
--- a/src/com/android/settings/search/SettingsSearchIndexablesProvider.java
+++ b/src/com/android/settings/search/SettingsSearchIndexablesProvider.java
@@ -65,6 +65,7 @@ import com.android.settings.SettingsActivity;
import com.android.settings.dashboard.DashboardFeatureProvider;
import com.android.settings.overlay.FeatureFactory;
import com.android.settings.slices.SettingsSliceProvider;
+import com.android.settingslib.drawer.ActivityTile;
import com.android.settingslib.drawer.DashboardCategory;
import com.android.settingslib.drawer.Tile;
import com.android.settingslib.search.Indexable;
@@ -375,13 +376,19 @@ public class SettingsSearchIndexablesProvider extends SearchIndexablesProvider {
final String currentPackageName = context.getPackageName();
for (DashboardCategory category : dashboardFeatureProvider.getAllCategories()) {
for (Tile tile : category.getTiles()) {
- if (currentPackageName.equals(tile.getPackageName())) {
+ if (currentPackageName.equals(tile.getPackageName())
+ && tile instanceof ActivityTile) {
+ // Skip Settings injected items because they should be indexed in the sub-pages.
continue;
}
final SearchIndexableRaw raw = new SearchIndexableRaw(context);
+ final CharSequence title = tile.getTitle(context);
+ raw.title = TextUtils.isEmpty(title) ? null : title.toString();
+ if (TextUtils.isEmpty(raw.title)) {
+ continue;
+ }
raw.key = dashboardFeatureProvider.getDashboardKeyForTile(tile);
- raw.title = tile.getTitle(context).toString();
- CharSequence summary = tile.getSummary(context);
+ final CharSequence summary = tile.getSummary(context);
raw.summaryOn = TextUtils.isEmpty(summary) ? null : summary.toString();
raw.summaryOff = raw.summaryOn;
raw.className = CATEGORY_KEY_TO_PARENT_MAP.get(tile.getCategory());