diff options
author | Jason Chiu <chiujason@google.com> | 2019-11-26 16:53:11 +0800 |
---|---|---|
committer | Jason Chiu <chiujason@google.com> | 2019-11-27 17:11:26 +0800 |
commit | 05599b89d20839ec04e71de172d63c58f5478952 (patch) | |
tree | 97c09a2bf8a9066eeb7dd4a31f3cb5f450c0a74f /src/com/android/settings/search | |
parent | a6198c25be73ea7870e024123fd29d2c8bc2623a (diff) | |
download | packages_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.java | 13 |
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()); |