| Index: chrome/browser/search_engines/template_url.cc
|
| diff --git a/chrome/browser/search_engines/template_url.cc b/chrome/browser/search_engines/template_url.cc
|
| index bf85e4ab66f1e9f7ef5b15855f01155e68bcc52a..96e694f5c8751c506ddb573a1e24bc6fc8336426 100644
|
| --- a/chrome/browser/search_engines/template_url.cc
|
| +++ b/chrome/browser/search_engines/template_url.cc
|
| @@ -52,6 +52,8 @@ static const char kGoogleBaseSuggestURLParameter[] =
|
| "google:baseSuggestURL";
|
| static const char kGoogleBaseSuggestURLParameterFull[] =
|
| "{google:baseSuggestURL}";
|
| +static const char kGoogleInstantFieldTrialGroupParameter[] =
|
| + "google:instantFieldTrialGroupParameter";
|
| static const char kGoogleOriginalQueryForSuggestionParameter[] =
|
| "google:originalQueryForSuggestion";
|
| static const char kGoogleRLZParameter[] = "google:RLZ";
|
| @@ -146,6 +148,9 @@ bool TemplateURLRef::ParseParameter(size_t start,
|
| replacements->push_back(Replacement(GOOGLE_BASE_URL, start));
|
| } else if (parameter == kGoogleBaseSuggestURLParameter) {
|
| replacements->push_back(Replacement(GOOGLE_BASE_SUGGEST_URL, start));
|
| + } else if (parameter == kGoogleInstantFieldTrialGroupParameter) {
|
| + replacements->push_back(Replacement(GOOGLE_INSTANT_FIELD_TRIAL_GROUP,
|
| + start));
|
| } else if (parameter == kGoogleOriginalQueryForSuggestionParameter) {
|
| replacements->push_back(Replacement(GOOGLE_ORIGINAL_QUERY_FOR_SUGGESTION,
|
| start));
|
| @@ -288,6 +293,21 @@ std::string TemplateURLRef::ReplaceSearchTerms(
|
| search_terms_data);
|
| }
|
|
|
| +std::string TemplateURLRef::ReplaceSearchTermsUsingProfile(
|
| + Profile* profile,
|
| + const TemplateURL& host,
|
| + const string16& terms,
|
| + int accepted_suggestion,
|
| + const string16& original_query_for_suggestion) const {
|
| + UIThreadSearchTermsData search_terms_data;
|
| + search_terms_data.SetProfile(profile);
|
| + return ReplaceSearchTermsUsingTermsData(host,
|
| + terms,
|
| + accepted_suggestion,
|
| + original_query_for_suggestion,
|
| + search_terms_data);
|
| +}
|
| +
|
| std::string TemplateURLRef::ReplaceSearchTermsUsingTermsData(
|
| const TemplateURL& host,
|
| const string16& terms,
|
| @@ -375,6 +395,10 @@ std::string TemplateURLRef::ReplaceSearchTermsUsingTermsData(
|
| url.insert(i->index, search_terms_data.GoogleBaseSuggestURLValue());
|
| break;
|
|
|
| + case GOOGLE_INSTANT_FIELD_TRIAL_GROUP:
|
| + url.insert(i->index, search_terms_data.InstantFieldTrialUrlParam());
|
| + break;
|
| +
|
| case GOOGLE_ORIGINAL_QUERY_FOR_SUGGESTION:
|
| if (accepted_suggestion >= 0)
|
| url.insert(i->index, "oq=" + UTF16ToUTF8(encoded_original_query) +
|
|
|