EnhancedGoogleSearch overrides GoogleSearch if present.
This is to fix bug http://b/issue?id=1929993. If user had GoogleSearch earlier and that was the default, it will get overridden by EnhancedGoogleSearch when the user installs the latter from the market.
This commit is contained in:
@@ -57,6 +57,11 @@ public class Searchables {
|
|||||||
private SearchableInfo mDefaultSearchable = null;
|
private SearchableInfo mDefaultSearchable = null;
|
||||||
private SearchableInfo mDefaultSearchableForWebSearch = null;
|
private SearchableInfo mDefaultSearchableForWebSearch = null;
|
||||||
|
|
||||||
|
public static String GOOGLE_SEARCH_COMPONENT_NAME =
|
||||||
|
"com.android.googlesearch/.GoogleSearch";
|
||||||
|
public static String ENHANCED_GOOGLE_SEARCH_COMPONENT_NAME =
|
||||||
|
"com.google.android.providers.enhancedgooglesearch/.Launcher";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @param context Context to use for looking up activities etc.
|
* @param context Context to use for looking up activities etc.
|
||||||
@@ -341,6 +346,18 @@ public class Searchables {
|
|||||||
return component;
|
return component;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
// If the current preferred activity is GoogleSearch, and we detect
|
||||||
|
// EnhancedGoogleSearch installed as well, set the latter as preferred since that
|
||||||
|
// is a superset and provides more functionality.
|
||||||
|
ComponentName cn = new ComponentName(ri.activityInfo.packageName, ri.activityInfo.name);
|
||||||
|
if (cn.flattenToShortString().equals(GOOGLE_SEARCH_COMPONENT_NAME)) {
|
||||||
|
ComponentName enhancedGoogleSearch = ComponentName.unflattenFromString(
|
||||||
|
ENHANCED_GOOGLE_SEARCH_COMPONENT_NAME);
|
||||||
|
if (setPreferredActivity(enhancedGoogleSearch, Intent.ACTION_WEB_SEARCH)) {
|
||||||
|
return enhancedGoogleSearch;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ri == null) return null;
|
if (ri == null) return null;
|
||||||
|
|||||||
Reference in New Issue
Block a user