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