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 <string> | 7 #include <string> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
61 const char kGoogleBaseURLParameter[] = "google:baseURL"; | 61 const char kGoogleBaseURLParameter[] = "google:baseURL"; |
62 const char kGoogleBaseURLParameterFull[] = "{google:baseURL}"; | 62 const char kGoogleBaseURLParameterFull[] = "{google:baseURL}"; |
63 | 63 |
64 // Like google:baseURL, but for the Search Suggest capability. | 64 // Like google:baseURL, but for the Search Suggest capability. |
65 const char kGoogleBaseSuggestURLParameter[] = "google:baseSuggestURL"; | 65 const char kGoogleBaseSuggestURLParameter[] = "google:baseSuggestURL"; |
66 const char kGoogleBaseSuggestURLParameterFull[] = "{google:baseSuggestURL}"; | 66 const char kGoogleBaseSuggestURLParameterFull[] = "{google:baseSuggestURL}"; |
67 const char kGoogleBookmarkBarPinnedParameter[] = "google:bookmarkBarPinned"; | 67 const char kGoogleBookmarkBarPinnedParameter[] = "google:bookmarkBarPinned"; |
68 const char kGoogleCurrentPageUrlParameter[] = "google:currentPageUrl"; | 68 const char kGoogleCurrentPageUrlParameter[] = "google:currentPageUrl"; |
69 const char kGoogleCursorPositionParameter[] = "google:cursorPosition"; | 69 const char kGoogleCursorPositionParameter[] = "google:cursorPosition"; |
70 const char kGoogleForceInstantResultsParameter[] = "google:forceInstantResults"; | 70 const char kGoogleForceInstantResultsParameter[] = "google:forceInstantResults"; |
| 71 const char kGoogleVoiceInputSource[] = "google:voiceInputSource"; |
71 const char kGoogleInstantExtendedEnabledParameter[] = | 72 const char kGoogleInstantExtendedEnabledParameter[] = |
72 "google:instantExtendedEnabledParameter"; | 73 "google:instantExtendedEnabledParameter"; |
73 const char kGoogleInstantExtendedEnabledKey[] = | 74 const char kGoogleInstantExtendedEnabledKey[] = |
74 "google:instantExtendedEnabledKey"; | 75 "google:instantExtendedEnabledKey"; |
75 const char kGoogleInstantExtendedEnabledKeyFull[] = | 76 const char kGoogleInstantExtendedEnabledKeyFull[] = |
76 "{google:instantExtendedEnabledKey}"; | 77 "{google:instantExtendedEnabledKey}"; |
77 const char kGoogleNTPIsThemedParameter[] = "google:ntpIsThemedParameter"; | 78 const char kGoogleNTPIsThemedParameter[] = "google:ntpIsThemedParameter"; |
78 const char kGoogleOmniboxStartMarginParameter[] = | 79 const char kGoogleOmniboxStartMarginParameter[] = |
79 "google:omniboxStartMarginParameter"; | 80 "google:omniboxStartMarginParameter"; |
80 const char kGoogleOriginalQueryForSuggestionParameter[] = | 81 const char kGoogleOriginalQueryForSuggestionParameter[] = |
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
199 | 200 |
200 TemplateURLRef::SearchTermsArgs::SearchTermsArgs( | 201 TemplateURLRef::SearchTermsArgs::SearchTermsArgs( |
201 const base::string16& search_terms) | 202 const base::string16& search_terms) |
202 : search_terms(search_terms), | 203 : search_terms(search_terms), |
203 accepted_suggestion(NO_SUGGESTIONS_AVAILABLE), | 204 accepted_suggestion(NO_SUGGESTIONS_AVAILABLE), |
204 cursor_position(string16::npos), | 205 cursor_position(string16::npos), |
205 omnibox_start_margin(-1), | 206 omnibox_start_margin(-1), |
206 page_classification(AutocompleteInput::INVALID_SPEC), | 207 page_classification(AutocompleteInput::INVALID_SPEC), |
207 bookmark_bar_pinned(false), | 208 bookmark_bar_pinned(false), |
208 append_extra_query_params(false), | 209 append_extra_query_params(false), |
209 force_instant_results(false) { | 210 force_instant_results(false), |
| 211 is_voice_input_source(false) { |
210 } | 212 } |
211 | 213 |
212 TemplateURLRef::SearchTermsArgs::~SearchTermsArgs() { | 214 TemplateURLRef::SearchTermsArgs::~SearchTermsArgs() { |
213 } | 215 } |
214 | 216 |
215 | 217 |
216 // TemplateURLRef ------------------------------------------------------------- | 218 // TemplateURLRef ------------------------------------------------------------- |
217 | 219 |
218 TemplateURLRef::TemplateURLRef(TemplateURL* owner, Type type) | 220 TemplateURLRef::TemplateURLRef(TemplateURL* owner, Type type) |
219 : owner_(owner), | 221 : owner_(owner), |
(...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
578 } else if (parameter == kGoogleImageURLParameter) { | 580 } else if (parameter == kGoogleImageURLParameter) { |
579 replacements->push_back(Replacement(TemplateURLRef::GOOGLE_IMAGE_URL, | 581 replacements->push_back(Replacement(TemplateURLRef::GOOGLE_IMAGE_URL, |
580 start)); | 582 start)); |
581 } else if (parameter == kGoogleForceInstantResultsParameter) { | 583 } else if (parameter == kGoogleForceInstantResultsParameter) { |
582 replacements->push_back(Replacement(GOOGLE_FORCE_INSTANT_RESULTS, start)); | 584 replacements->push_back(Replacement(GOOGLE_FORCE_INSTANT_RESULTS, start)); |
583 } else if (parameter == kGoogleInstantExtendedEnabledParameter) { | 585 } else if (parameter == kGoogleInstantExtendedEnabledParameter) { |
584 replacements->push_back(Replacement(GOOGLE_INSTANT_EXTENDED_ENABLED, | 586 replacements->push_back(Replacement(GOOGLE_INSTANT_EXTENDED_ENABLED, |
585 start)); | 587 start)); |
586 } else if (parameter == kGoogleInstantExtendedEnabledKey) { | 588 } else if (parameter == kGoogleInstantExtendedEnabledKey) { |
587 url->insert(start, google_util::kInstantExtendedAPIParam); | 589 url->insert(start, google_util::kInstantExtendedAPIParam); |
| 590 } else if (parameter == kGoogleVoiceInputSource) { |
| 591 replacements->push_back(Replacement(GOOGLE_VOICE_INPUT_SOURCE, |
| 592 start)); |
588 } else if (parameter == kGoogleNTPIsThemedParameter) { | 593 } else if (parameter == kGoogleNTPIsThemedParameter) { |
589 replacements->push_back(Replacement(GOOGLE_NTP_IS_THEMED, start)); | 594 replacements->push_back(Replacement(GOOGLE_NTP_IS_THEMED, start)); |
590 } else if (parameter == kGoogleOmniboxStartMarginParameter) { | 595 } else if (parameter == kGoogleOmniboxStartMarginParameter) { |
591 replacements->push_back(Replacement(GOOGLE_OMNIBOX_START_MARGIN, start)); | 596 replacements->push_back(Replacement(GOOGLE_OMNIBOX_START_MARGIN, start)); |
592 } else if (parameter == kGoogleOriginalQueryForSuggestionParameter) { | 597 } else if (parameter == kGoogleOriginalQueryForSuggestionParameter) { |
593 replacements->push_back(Replacement(GOOGLE_ORIGINAL_QUERY_FOR_SUGGESTION, | 598 replacements->push_back(Replacement(GOOGLE_ORIGINAL_QUERY_FOR_SUGGESTION, |
594 start)); | 599 start)); |
595 } else if (parameter == kGooglePageClassificationParameter) { | 600 } else if (parameter == kGooglePageClassificationParameter) { |
596 replacements->push_back(Replacement(GOOGLE_PAGE_CLASSIFICATION, start)); | 601 replacements->push_back(Replacement(GOOGLE_PAGE_CLASSIFICATION, start)); |
597 } else if (parameter == kGoogleRLZParameter) { | 602 } else if (parameter == kGoogleRLZParameter) { |
(...skipping 287 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
885 | 890 |
886 case GOOGLE_FORCE_INSTANT_RESULTS: | 891 case GOOGLE_FORCE_INSTANT_RESULTS: |
887 DCHECK(!i->is_post_param); | 892 DCHECK(!i->is_post_param); |
888 HandleReplacement(std::string(), | 893 HandleReplacement(std::string(), |
889 search_terms_data.ForceInstantResultsParam( | 894 search_terms_data.ForceInstantResultsParam( |
890 search_terms_args.force_instant_results), | 895 search_terms_args.force_instant_results), |
891 *i, | 896 *i, |
892 &url); | 897 &url); |
893 break; | 898 break; |
894 | 899 |
| 900 case GOOGLE_VOICE_INPUT_SOURCE: |
| 901 DCHECK(!i->is_post_param); |
| 902 HandleReplacement(std::string(), |
| 903 search_terms_data.VoiceInputSourceParam( |
| 904 search_terms_args.is_voice_input_source), |
| 905 *i, |
| 906 &url); |
| 907 break; |
| 908 |
895 case GOOGLE_INSTANT_EXTENDED_ENABLED: | 909 case GOOGLE_INSTANT_EXTENDED_ENABLED: |
896 DCHECK(!i->is_post_param); | 910 DCHECK(!i->is_post_param); |
897 HandleReplacement( | 911 HandleReplacement( |
898 std::string(), search_terms_data.InstantExtendedEnabledParam(), *i, | 912 std::string(), search_terms_data.InstantExtendedEnabledParam(), *i, |
899 &url); | 913 &url); |
900 break; | 914 break; |
901 | 915 |
902 case GOOGLE_NTP_IS_THEMED: | 916 case GOOGLE_NTP_IS_THEMED: |
903 DCHECK(!i->is_post_param); | 917 DCHECK(!i->is_post_param); |
904 HandleReplacement( | 918 HandleReplacement( |
(...skipping 414 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1319 // patterns. This means that given patterns | 1333 // patterns. This means that given patterns |
1320 // [ "http://foo/#q={searchTerms}", "http://foo/?q={searchTerms}" ], | 1334 // [ "http://foo/#q={searchTerms}", "http://foo/?q={searchTerms}" ], |
1321 // calling ExtractSearchTermsFromURL() on "http://foo/?q=bar#q=' would | 1335 // calling ExtractSearchTermsFromURL() on "http://foo/?q=bar#q=' would |
1322 // return false. This is important for at least Google, where such URLs | 1336 // return false. This is important for at least Google, where such URLs |
1323 // are invalid. | 1337 // are invalid. |
1324 return !search_terms->empty(); | 1338 return !search_terms->empty(); |
1325 } | 1339 } |
1326 } | 1340 } |
1327 return false; | 1341 return false; |
1328 } | 1342 } |
OLD | NEW |