From 15da32c33f2581463031fcda43bca3cfbde47048 Mon Sep 17 00:00:00 2001 From: Yi-Ling Chuang Date: Mon, 25 Nov 2019 17:59:36 +0800 Subject: [PATCH] Enable Settings Search to query private Slices. The base Uri is now determined by whether a certain config string is set or not. When the config is set, Settings Search will then be able to query private Slices, otherwise we'll just provide public ones. Bug: 141088937 Test: rebuild Change-Id: I63b689de4491b664a2d6f88867fbbb9b1da38277 --- .../settings/search/SettingsSearchIndexablesProvider.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/com/android/settings/search/SettingsSearchIndexablesProvider.java b/src/com/android/settings/search/SettingsSearchIndexablesProvider.java index d504d9b8add..fa55e7cfc52 100644 --- a/src/com/android/settings/search/SettingsSearchIndexablesProvider.java +++ b/src/com/android/settings/search/SettingsSearchIndexablesProvider.java @@ -61,6 +61,7 @@ import android.util.Log; import androidx.annotation.Nullable; import androidx.slice.SliceViewManager; +import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settings.dashboard.DashboardFeatureProvider; import com.android.settings.overlay.FeatureFactory; @@ -215,11 +216,13 @@ public class SettingsSearchIndexablesProvider extends SearchIndexablesProvider { public Cursor querySliceUriPairs() { final SliceViewManager manager = SliceViewManager.getInstance(getContext()); final MatrixCursor cursor = new MatrixCursor(SLICE_URI_PAIRS_COLUMNS); - final Uri baseUri = - new Uri.Builder() + final String queryUri = getContext().getString(R.string.config_non_public_slice_query_uri); + final Uri baseUri = !TextUtils.isEmpty(queryUri) ? Uri.parse(queryUri) + : new Uri.Builder() .scheme(ContentResolver.SCHEME_CONTENT) .authority(SettingsSliceProvider.SLICE_AUTHORITY) .build(); + final Uri platformBaseUri = new Uri.Builder() .scheme(ContentResolver.SCHEME_CONTENT)