Read SettingsIntelligence package name from resource
Test: make RunSettingsRoboTests Change-Id: I2143e1f7657cc0e01e91978e8c212ff079cec7d7
This commit is contained in:
@@ -145,4 +145,9 @@
|
||||
|
||||
<!-- Whether or not TopLevelSettings should force rounded icon for injected tiles -->
|
||||
<bool name="config_force_rounded_icon_TopLevelSettings">true</bool>
|
||||
|
||||
<!-- Settings intelligence package name -->
|
||||
<string name="config_settingsintelligence_package_name" translatable="false">
|
||||
com.android.settings.intelligence
|
||||
</string>
|
||||
</resources>
|
||||
|
@@ -29,6 +29,7 @@ import android.view.ViewGroup;
|
||||
import android.widget.Toolbar;
|
||||
|
||||
import com.android.internal.logging.nano.MetricsProto;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settingslib.search.SearchIndexableResources;
|
||||
@@ -55,8 +56,8 @@ public interface SearchFeatureProvider {
|
||||
*/
|
||||
SearchIndexableResources getSearchIndexableResources();
|
||||
|
||||
default String getSettingsIntelligencePkgName() {
|
||||
return "com.android.settings.intelligence";
|
||||
default String getSettingsIntelligencePkgName(Context context) {
|
||||
return context.getString(R.string.config_settingsintelligence_package_name);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -66,7 +67,7 @@ public interface SearchFeatureProvider {
|
||||
if (activity == null || toolbar == null) {
|
||||
return;
|
||||
}
|
||||
if (!Utils.isPackageEnabled(activity, getSettingsIntelligencePkgName())) {
|
||||
if (!Utils.isPackageEnabled(activity, getSettingsIntelligencePkgName(activity))) {
|
||||
final ViewGroup parent = (ViewGroup)toolbar.getParent();
|
||||
if (parent != null) {
|
||||
parent.setVisibility(View.GONE);
|
||||
@@ -84,7 +85,7 @@ public interface SearchFeatureProvider {
|
||||
|
||||
toolbar.setOnClickListener(tb -> {
|
||||
final Intent intent = SEARCH_UI_INTENT;
|
||||
intent.setPackage(getSettingsIntelligencePkgName());
|
||||
intent.setPackage(getSettingsIntelligencePkgName(activity));
|
||||
final Context context = activity.getApplicationContext();
|
||||
|
||||
FeatureFactory.getFactory(context).getSlicesFeatureProvider()
|
||||
|
@@ -41,7 +41,7 @@ public class SearchFeatureProviderImpl implements SearchFeatureProvider {
|
||||
}
|
||||
final String packageName = caller.getPackageName();
|
||||
final boolean isSettingsPackage = TextUtils.equals(packageName, context.getPackageName())
|
||||
|| TextUtils.equals(getSettingsIntelligencePkgName(), packageName);
|
||||
|| TextUtils.equals(getSettingsIntelligencePkgName(context), packageName);
|
||||
final boolean isWhitelistedPackage =
|
||||
isSignatureWhitelisted(context, caller.getPackageName());
|
||||
if (isSettingsPackage || isWhitelistedPackage) {
|
||||
|
@@ -57,8 +57,8 @@ public class SearchMenuController implements LifecycleObserver, OnCreateOptionsM
|
||||
@Override
|
||||
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
||||
final Context context = mHost.getContext();
|
||||
final String SettingsIntelligencePkgName = FeatureFactory.getFactory(context)
|
||||
.getSearchFeatureProvider().getSettingsIntelligencePkgName();
|
||||
final String SettingsIntelligencePkgName = context.getString(
|
||||
R.string.config_settingsintelligence_package_name);
|
||||
if (!Utils.isDeviceProvisioned(mHost.getContext())) {
|
||||
return;
|
||||
}
|
||||
|
@@ -89,7 +89,7 @@ public class SearchFeatureProviderImplTest {
|
||||
|
||||
@Test
|
||||
public void verifyLaunchSearchResultPageCaller_settingsIntelligenceCaller_shouldNotCrash() {
|
||||
final String packageName = mProvider.getSettingsIntelligencePkgName();
|
||||
final String packageName = mProvider.getSettingsIntelligencePkgName(mActivity);
|
||||
final ComponentName cn = new ComponentName(packageName, "class");
|
||||
mProvider.verifyLaunchSearchResultPageCaller(mActivity, cn);
|
||||
}
|
||||
|
Reference in New Issue
Block a user