OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "components/search_engines/template_url.h" | 5 #include "components/search_engines/template_url.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
156 parameter_position->begin = begin; | 156 parameter_position->begin = begin; |
157 parameter_position->len = arraysize(kSearchTermsParameterFullEscaped) - 1; | 157 parameter_position->len = arraysize(kSearchTermsParameterFullEscaped) - 1; |
158 return true; | 158 return true; |
159 } | 159 } |
160 | 160 |
161 bool IsTemplateParameterString(const std::string& param) { | 161 bool IsTemplateParameterString(const std::string& param) { |
162 return (param.length() > 2) && (*(param.begin()) == kStartParameter) && | 162 return (param.length() > 2) && (*(param.begin()) == kStartParameter) && |
163 (*(param.rbegin()) == kEndParameter); | 163 (*(param.rbegin()) == kEndParameter); |
164 } | 164 } |
165 | 165 |
166 // Special case for search_terms_replacement_key comparison, because of | |
167 // its special initialization in TemplateUrl constructor. | |
168 bool SearchTermsReplacementKeysMatch( | |
169 const std::string& search_terms_replacement_key1, | |
170 const std::string& search_terms_replacement_key2) { | |
171 if (search_terms_replacement_key1 == search_terms_replacement_key2) | |
172 return true; | |
173 if (search_terms_replacement_key1 == google_util::kInstantExtendedAPIParam && | |
174 search_terms_replacement_key2 == kGoogleInstantExtendedEnabledKey) | |
175 return true; | |
176 if (search_terms_replacement_key2 == google_util::kInstantExtendedAPIParam && | |
177 search_terms_replacement_key1 == kGoogleInstantExtendedEnabledKey) | |
178 return true; | |
179 return false; | |
180 } | |
181 | |
182 } // namespace | 166 } // namespace |
183 | 167 |
184 | 168 |
185 // TemplateURLRef::SearchTermsArgs -------------------------------------------- | 169 // TemplateURLRef::SearchTermsArgs -------------------------------------------- |
186 | 170 |
187 TemplateURLRef::SearchTermsArgs::SearchTermsArgs( | 171 TemplateURLRef::SearchTermsArgs::SearchTermsArgs( |
188 const base::string16& search_terms) | 172 const base::string16& search_terms) |
189 : search_terms(search_terms), | 173 : search_terms(search_terms), |
190 input_type(metrics::OmniboxInputType::INVALID), | 174 input_type(metrics::OmniboxInputType::INVALID), |
191 accepted_suggestion(NO_SUGGESTIONS_AVAILABLE), | 175 accepted_suggestion(NO_SUGGESTIONS_AVAILABLE), |
(...skipping 1077 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1269 (t_url->instant_url_post_params() == data->instant_url_post_params) && | 1253 (t_url->instant_url_post_params() == data->instant_url_post_params) && |
1270 (t_url->image_url_post_params() == data->image_url_post_params) && | 1254 (t_url->image_url_post_params() == data->image_url_post_params) && |
1271 (t_url->favicon_url() == data->favicon_url) && | 1255 (t_url->favicon_url() == data->favicon_url) && |
1272 (t_url->safe_for_autoreplace() == data->safe_for_autoreplace) && | 1256 (t_url->safe_for_autoreplace() == data->safe_for_autoreplace) && |
1273 (t_url->input_encodings() == data->input_encodings) && | 1257 (t_url->input_encodings() == data->input_encodings) && |
1274 (t_url->alternate_urls() == data->alternate_urls) && | 1258 (t_url->alternate_urls() == data->alternate_urls) && |
1275 SearchTermsReplacementKeysMatch(t_url->search_terms_replacement_key(), | 1259 SearchTermsReplacementKeysMatch(t_url->search_terms_replacement_key(), |
1276 data->search_terms_replacement_key); | 1260 data->search_terms_replacement_key); |
1277 } | 1261 } |
1278 | 1262 |
1263 // static | |
1264 // Special case for search_terms_replacement_key comparison, because of | |
1265 // its special initialization in TemplateUrl constructor. | |
vasilii
2016/11/30 14:00:03
Move the comment to the header.
Alexander Yashkin
2016/12/05 18:16:48
Done
| |
1266 bool TemplateURL::SearchTermsReplacementKeysMatch( | |
1267 const std::string& search_terms_replacement_key1, | |
1268 const std::string& search_terms_replacement_key2) { | |
1269 if (search_terms_replacement_key1 == search_terms_replacement_key2) | |
1270 return true; | |
1271 if (search_terms_replacement_key1 == google_util::kInstantExtendedAPIParam && | |
1272 search_terms_replacement_key2 == kGoogleInstantExtendedEnabledKey) | |
1273 return true; | |
1274 if (search_terms_replacement_key2 == google_util::kInstantExtendedAPIParam && | |
1275 search_terms_replacement_key1 == kGoogleInstantExtendedEnabledKey) | |
1276 return true; | |
1277 return false; | |
1278 } | |
1279 | |
1279 base::string16 TemplateURL::AdjustedShortNameForLocaleDirection() const { | 1280 base::string16 TemplateURL::AdjustedShortNameForLocaleDirection() const { |
1280 base::string16 bidi_safe_short_name = data_.short_name(); | 1281 base::string16 bidi_safe_short_name = data_.short_name(); |
1281 base::i18n::AdjustStringForLocaleDirection(&bidi_safe_short_name); | 1282 base::i18n::AdjustStringForLocaleDirection(&bidi_safe_short_name); |
1282 return bidi_safe_short_name; | 1283 return bidi_safe_short_name; |
1283 } | 1284 } |
1284 | 1285 |
1285 bool TemplateURL::SupportsReplacement( | 1286 bool TemplateURL::SupportsReplacement( |
1286 const SearchTermsData& search_terms_data) const { | 1287 const SearchTermsData& search_terms_data) const { |
1287 return url_ref_->SupportsReplacement(search_terms_data); | 1288 return url_ref_->SupportsReplacement(search_terms_data); |
1288 } | 1289 } |
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1541 // patterns. This means that given patterns | 1542 // patterns. This means that given patterns |
1542 // [ "http://foo/#q={searchTerms}", "http://foo/?q={searchTerms}" ], | 1543 // [ "http://foo/#q={searchTerms}", "http://foo/?q={searchTerms}" ], |
1543 // calling ExtractSearchTermsFromURL() on "http://foo/?q=bar#q=' would | 1544 // calling ExtractSearchTermsFromURL() on "http://foo/?q=bar#q=' would |
1544 // return false. This is important for at least Google, where such URLs | 1545 // return false. This is important for at least Google, where such URLs |
1545 // are invalid. | 1546 // are invalid. |
1546 return !search_terms->empty(); | 1547 return !search_terms->empty(); |
1547 } | 1548 } |
1548 } | 1549 } |
1549 return false; | 1550 return false; |
1550 } | 1551 } |
OLD | NEW |