diff options
Diffstat (limited to 'chrome/browser/search_engines/template_url_service_android.cc')
-rw-r--r-- | chrome/browser/search_engines/template_url_service_android.cc | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/chrome/browser/search_engines/template_url_service_android.cc b/chrome/browser/search_engines/template_url_service_android.cc index 86ee2a6..f880c25 100644 --- a/chrome/browser/search_engines/template_url_service_android.cc +++ b/chrome/browser/search_engines/template_url_service_android.cc @@ -165,7 +165,7 @@ TemplateUrlServiceAndroid::GetUrlForVoiceSearchQuery(JNIEnv* env, std::string url; if (!query.empty()) { - GURL gurl = GetDefaultSearchURLForSearchTerms(GetOriginalProfile(), query); + GURL gurl(GetDefaultSearchURLForSearchTerms(GetOriginalProfile(), query)); if (google_util::IsGoogleSearchUrl(gurl)) gurl = net::AppendQueryParameter(gurl, "inm", "vs"); url = gurl.spec(); @@ -194,6 +194,23 @@ TemplateUrlServiceAndroid::ReplaceSearchTermsInUrl(JNIEnv* env, return base::android::ScopedJavaLocalRef<jstring>(env, NULL); } +base::android::ScopedJavaLocalRef<jstring> +TemplateUrlServiceAndroid::GetUrlForContextualSearchQuery(JNIEnv* env, + jobject obj, + jstring jquery) { + base::string16 query(ConvertJavaStringToUTF16(env, jquery)); + std::string url; + + if (!query.empty()) { + GURL gurl(GetDefaultSearchURLForSearchTerms(GetOriginalProfile(), query)); + if (google_util::IsGoogleSearchUrl(gurl)) + gurl = net::AppendQueryParameter(gurl, "ctxs", "1"); + url = gurl.spec(); + } + + return ConvertUTF8ToJavaString(env, url); +} + static jlong Init(JNIEnv* env, jobject obj) { TemplateUrlServiceAndroid* template_url_service_android = new TemplateUrlServiceAndroid(env, obj); |