OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/search_engines/template_url.h" | 5 #include "chrome/browser/search_engines/template_url.h" |
6 | 6 |
7 #include "base/i18n/case_conversion.h" | 7 #include "base/i18n/case_conversion.h" |
8 #include "base/i18n/icu_string_conversions.h" | 8 #include "base/i18n/icu_string_conversions.h" |
9 #include "base/i18n/rtl.h" | 9 #include "base/i18n/rtl.h" |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
49 static const char kGoogleAcceptedSuggestionParameter[] = | 49 static const char kGoogleAcceptedSuggestionParameter[] = |
50 "google:acceptedSuggestion"; | 50 "google:acceptedSuggestion"; |
51 // Host/Domain Google searches are relative to. | 51 // Host/Domain Google searches are relative to. |
52 static const char kGoogleBaseURLParameter[] = "google:baseURL"; | 52 static const char kGoogleBaseURLParameter[] = "google:baseURL"; |
53 static const char kGoogleBaseURLParameterFull[] = "{google:baseURL}"; | 53 static const char kGoogleBaseURLParameterFull[] = "{google:baseURL}"; |
54 // Like google:baseURL, but for the Search Suggest capability. | 54 // Like google:baseURL, but for the Search Suggest capability. |
55 static const char kGoogleBaseSuggestURLParameter[] = | 55 static const char kGoogleBaseSuggestURLParameter[] = |
56 "google:baseSuggestURL"; | 56 "google:baseSuggestURL"; |
57 static const char kGoogleBaseSuggestURLParameterFull[] = | 57 static const char kGoogleBaseSuggestURLParameterFull[] = |
58 "{google:baseSuggestURL}"; | 58 "{google:baseSuggestURL}"; |
| 59 static const char kGoogleInstantEnabledParameter[] = |
| 60 "google:instantEnabledParameter"; |
59 static const char kGoogleInstantFieldTrialGroupParameter[] = | 61 static const char kGoogleInstantFieldTrialGroupParameter[] = |
60 "google:instantFieldTrialGroupParameter"; | 62 "google:instantFieldTrialGroupParameter"; |
61 static const char kGoogleOriginalQueryForSuggestionParameter[] = | 63 static const char kGoogleOriginalQueryForSuggestionParameter[] = |
62 "google:originalQueryForSuggestion"; | 64 "google:originalQueryForSuggestion"; |
63 static const char kGoogleRLZParameter[] = "google:RLZ"; | 65 static const char kGoogleRLZParameter[] = "google:RLZ"; |
64 // Same as kSearchTermsParameter, with no escaping. | 66 // Same as kSearchTermsParameter, with no escaping. |
65 static const char kGoogleSearchFieldtrialParameter[] = | 67 static const char kGoogleSearchFieldtrialParameter[] = |
66 "google:searchFieldtrialParameter"; | 68 "google:searchFieldtrialParameter"; |
67 static const char kGoogleUnescapedSearchTermsParameter[] = | 69 static const char kGoogleUnescapedSearchTermsParameter[] = |
68 "google:unescapedSearchTerms"; | 70 "google:unescapedSearchTerms"; |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
145 replacements->push_back(Replacement(ENCODING, start)); | 147 replacements->push_back(Replacement(ENCODING, start)); |
146 } else if (parameter == kOutputEncodingParameter) { | 148 } else if (parameter == kOutputEncodingParameter) { |
147 if (!optional) | 149 if (!optional) |
148 url->insert(start, kOutputEncodingType); | 150 url->insert(start, kOutputEncodingType); |
149 } else if (parameter == kGoogleAcceptedSuggestionParameter) { | 151 } else if (parameter == kGoogleAcceptedSuggestionParameter) { |
150 replacements->push_back(Replacement(GOOGLE_ACCEPTED_SUGGESTION, start)); | 152 replacements->push_back(Replacement(GOOGLE_ACCEPTED_SUGGESTION, start)); |
151 } else if (parameter == kGoogleBaseURLParameter) { | 153 } else if (parameter == kGoogleBaseURLParameter) { |
152 replacements->push_back(Replacement(GOOGLE_BASE_URL, start)); | 154 replacements->push_back(Replacement(GOOGLE_BASE_URL, start)); |
153 } else if (parameter == kGoogleBaseSuggestURLParameter) { | 155 } else if (parameter == kGoogleBaseSuggestURLParameter) { |
154 replacements->push_back(Replacement(GOOGLE_BASE_SUGGEST_URL, start)); | 156 replacements->push_back(Replacement(GOOGLE_BASE_SUGGEST_URL, start)); |
| 157 } else if (parameter == kGoogleInstantEnabledParameter) { |
| 158 replacements->push_back(Replacement(GOOGLE_INSTANT_ENABLED, start)); |
155 } else if (parameter == kGoogleInstantFieldTrialGroupParameter) { | 159 } else if (parameter == kGoogleInstantFieldTrialGroupParameter) { |
156 replacements->push_back(Replacement(GOOGLE_INSTANT_FIELD_TRIAL_GROUP, | 160 replacements->push_back(Replacement(GOOGLE_INSTANT_FIELD_TRIAL_GROUP, |
157 start)); | 161 start)); |
158 } else if (parameter == kGoogleOriginalQueryForSuggestionParameter) { | 162 } else if (parameter == kGoogleOriginalQueryForSuggestionParameter) { |
159 replacements->push_back(Replacement(GOOGLE_ORIGINAL_QUERY_FOR_SUGGESTION, | 163 replacements->push_back(Replacement(GOOGLE_ORIGINAL_QUERY_FOR_SUGGESTION, |
160 start)); | 164 start)); |
161 } else if (parameter == kGoogleRLZParameter) { | 165 } else if (parameter == kGoogleRLZParameter) { |
162 replacements->push_back(Replacement(GOOGLE_RLZ, start)); | 166 replacements->push_back(Replacement(GOOGLE_RLZ, start)); |
163 } else if (parameter == kGoogleSearchFieldtrialParameter) { | 167 } else if (parameter == kGoogleSearchFieldtrialParameter) { |
164 replacements->push_back(Replacement(GOOGLE_SEARCH_FIELDTRIAL_GROUP, start)); | 168 replacements->push_back(Replacement(GOOGLE_SEARCH_FIELDTRIAL_GROUP, start)); |
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
385 break; | 389 break; |
386 | 390 |
387 case GOOGLE_BASE_URL: | 391 case GOOGLE_BASE_URL: |
388 url.insert(i->index, search_terms_data.GoogleBaseURLValue()); | 392 url.insert(i->index, search_terms_data.GoogleBaseURLValue()); |
389 break; | 393 break; |
390 | 394 |
391 case GOOGLE_BASE_SUGGEST_URL: | 395 case GOOGLE_BASE_SUGGEST_URL: |
392 url.insert(i->index, search_terms_data.GoogleBaseSuggestURLValue()); | 396 url.insert(i->index, search_terms_data.GoogleBaseSuggestURLValue()); |
393 break; | 397 break; |
394 | 398 |
| 399 case GOOGLE_INSTANT_ENABLED: |
| 400 url.insert(i->index, search_terms_data.InstantEnabledParam()); |
| 401 break; |
| 402 |
395 case GOOGLE_INSTANT_FIELD_TRIAL_GROUP: | 403 case GOOGLE_INSTANT_FIELD_TRIAL_GROUP: |
396 url.insert(i->index, search_terms_data.InstantFieldTrialUrlParam()); | 404 url.insert(i->index, search_terms_data.InstantFieldTrialUrlParam()); |
397 break; | 405 break; |
398 | 406 |
399 case GOOGLE_ORIGINAL_QUERY_FOR_SUGGESTION: | 407 case GOOGLE_ORIGINAL_QUERY_FOR_SUGGESTION: |
400 if (accepted_suggestion >= 0) | 408 if (accepted_suggestion >= 0) |
401 url.insert(i->index, "oq=" + UTF16ToUTF8(encoded_original_query) + | 409 url.insert(i->index, "oq=" + UTF16ToUTF8(encoded_original_query) + |
402 "&"); | 410 "&"); |
403 break; | 411 break; |
404 | 412 |
(...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
743 } | 751 } |
744 | 752 |
745 std::string TemplateURL::GetExtensionId() const { | 753 std::string TemplateURL::GetExtensionId() const { |
746 DCHECK(IsExtensionKeyword()); | 754 DCHECK(IsExtensionKeyword()); |
747 return GURL(url_.url()).host(); | 755 return GURL(url_.url()).host(); |
748 } | 756 } |
749 | 757 |
750 bool TemplateURL::IsExtensionKeyword() const { | 758 bool TemplateURL::IsExtensionKeyword() const { |
751 return GURL(url_.url()).SchemeIs(chrome::kExtensionScheme); | 759 return GURL(url_.url()).SchemeIs(chrome::kExtensionScheme); |
752 } | 760 } |
OLD | NEW |