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_prepopulate_data.h" | 5 #include "chrome/browser/search_engines/template_url_prepopulate_data.h" |
6 | 6 |
7 #if defined(OS_POSIX) && !defined(OS_MACOSX) | 7 #if defined(OS_POSIX) && !defined(OS_MACOSX) |
8 #include <locale.h> | 8 #include <locale.h> |
9 #endif | 9 #endif |
10 | 10 |
(...skipping 1046 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1057 } | 1057 } |
1058 | 1058 |
1059 scoped_ptr<TemplateURLData> MakePrepopulatedTemplateURLData( | 1059 scoped_ptr<TemplateURLData> MakePrepopulatedTemplateURLData( |
1060 const base::string16& name, | 1060 const base::string16& name, |
1061 const base::string16& keyword, | 1061 const base::string16& keyword, |
1062 const base::StringPiece& search_url, | 1062 const base::StringPiece& search_url, |
1063 const base::StringPiece& suggest_url, | 1063 const base::StringPiece& suggest_url, |
1064 const base::StringPiece& instant_url, | 1064 const base::StringPiece& instant_url, |
1065 const base::StringPiece& image_url, | 1065 const base::StringPiece& image_url, |
1066 const base::StringPiece& new_tab_url, | 1066 const base::StringPiece& new_tab_url, |
| 1067 const base::StringPiece& contextual_search_url, |
1067 const base::StringPiece& search_url_post_params, | 1068 const base::StringPiece& search_url_post_params, |
1068 const base::StringPiece& suggest_url_post_params, | 1069 const base::StringPiece& suggest_url_post_params, |
1069 const base::StringPiece& instant_url_post_params, | 1070 const base::StringPiece& instant_url_post_params, |
1070 const base::StringPiece& image_url_post_params, | 1071 const base::StringPiece& image_url_post_params, |
1071 const base::StringPiece& favicon_url, | 1072 const base::StringPiece& favicon_url, |
1072 const base::StringPiece& encoding, | 1073 const base::StringPiece& encoding, |
1073 const base::ListValue& alternate_urls, | 1074 const base::ListValue& alternate_urls, |
1074 const base::StringPiece& search_terms_replacement_key, | 1075 const base::StringPiece& search_terms_replacement_key, |
1075 int id) { | 1076 int id) { |
1076 scoped_ptr<TemplateURLData> data(new TemplateURLData); | 1077 scoped_ptr<TemplateURLData> data(new TemplateURLData); |
1077 | 1078 |
1078 data->short_name = name; | 1079 data->short_name = name; |
1079 data->SetKeyword(keyword); | 1080 data->SetKeyword(keyword); |
1080 data->SetURL(search_url.as_string()); | 1081 data->SetURL(search_url.as_string()); |
1081 data->suggestions_url = suggest_url.as_string(); | 1082 data->suggestions_url = suggest_url.as_string(); |
1082 data->instant_url = instant_url.as_string(); | 1083 data->instant_url = instant_url.as_string(); |
1083 data->image_url = image_url.as_string(); | 1084 data->image_url = image_url.as_string(); |
1084 data->new_tab_url = new_tab_url.as_string(); | 1085 data->new_tab_url = new_tab_url.as_string(); |
| 1086 data->contextual_search_url = contextual_search_url.as_string(); |
1085 data->search_url_post_params = search_url_post_params.as_string(); | 1087 data->search_url_post_params = search_url_post_params.as_string(); |
1086 data->suggestions_url_post_params = suggest_url_post_params.as_string(); | 1088 data->suggestions_url_post_params = suggest_url_post_params.as_string(); |
1087 data->instant_url_post_params = instant_url_post_params.as_string(); | 1089 data->instant_url_post_params = instant_url_post_params.as_string(); |
1088 data->image_url_post_params = image_url_post_params.as_string(); | 1090 data->image_url_post_params = image_url_post_params.as_string(); |
1089 data->favicon_url = GURL(favicon_url.as_string()); | 1091 data->favicon_url = GURL(favicon_url.as_string()); |
1090 data->show_in_default_list = true; | 1092 data->show_in_default_list = true; |
1091 data->safe_for_autoreplace = true; | 1093 data->safe_for_autoreplace = true; |
1092 data->input_encodings.push_back(encoding.as_string()); | 1094 data->input_encodings.push_back(encoding.as_string()); |
1093 data->date_created = base::Time(); | 1095 data->date_created = base::Time(); |
1094 data->last_modified = base::Time(); | 1096 data->last_modified = base::Time(); |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1129 engine->GetString("search_url", &search_url) && !search_url.empty() && | 1131 engine->GetString("search_url", &search_url) && !search_url.empty() && |
1130 engine->GetString("favicon_url", &favicon_url) && | 1132 engine->GetString("favicon_url", &favicon_url) && |
1131 !favicon_url.empty() && | 1133 !favicon_url.empty() && |
1132 engine->GetString("encoding", &encoding) && !encoding.empty() && | 1134 engine->GetString("encoding", &encoding) && !encoding.empty() && |
1133 engine->GetInteger("id", &id)) { | 1135 engine->GetInteger("id", &id)) { |
1134 // These fields are optional. | 1136 // These fields are optional. |
1135 std::string suggest_url; | 1137 std::string suggest_url; |
1136 std::string instant_url; | 1138 std::string instant_url; |
1137 std::string image_url; | 1139 std::string image_url; |
1138 std::string new_tab_url; | 1140 std::string new_tab_url; |
| 1141 std::string contextual_search_url; |
1139 std::string search_url_post_params; | 1142 std::string search_url_post_params; |
1140 std::string suggest_url_post_params; | 1143 std::string suggest_url_post_params; |
1141 std::string instant_url_post_params; | 1144 std::string instant_url_post_params; |
1142 std::string image_url_post_params; | 1145 std::string image_url_post_params; |
1143 base::ListValue empty_list; | 1146 base::ListValue empty_list; |
1144 const base::ListValue* alternate_urls = &empty_list; | 1147 const base::ListValue* alternate_urls = &empty_list; |
1145 std::string search_terms_replacement_key; | 1148 std::string search_terms_replacement_key; |
1146 engine->GetString("suggest_url", &suggest_url); | 1149 engine->GetString("suggest_url", &suggest_url); |
1147 engine->GetString("instant_url", &instant_url); | 1150 engine->GetString("instant_url", &instant_url); |
1148 engine->GetString("image_url", &image_url); | 1151 engine->GetString("image_url", &image_url); |
1149 engine->GetString("new_tab_url", &new_tab_url); | 1152 engine->GetString("new_tab_url", &new_tab_url); |
| 1153 engine->GetString("contextual_search_url", &contextual_search_url); |
1150 engine->GetString("search_url_post_params", &search_url_post_params); | 1154 engine->GetString("search_url_post_params", &search_url_post_params); |
1151 engine->GetString("suggest_url_post_params", &suggest_url_post_params); | 1155 engine->GetString("suggest_url_post_params", &suggest_url_post_params); |
1152 engine->GetString("instant_url_post_params", &instant_url_post_params); | 1156 engine->GetString("instant_url_post_params", &instant_url_post_params); |
1153 engine->GetString("image_url_post_params", &image_url_post_params); | 1157 engine->GetString("image_url_post_params", &image_url_post_params); |
1154 engine->GetList("alternate_urls", &alternate_urls); | 1158 engine->GetList("alternate_urls", &alternate_urls); |
1155 engine->GetString("search_terms_replacement_key", | 1159 engine->GetString("search_terms_replacement_key", |
1156 &search_terms_replacement_key); | 1160 &search_terms_replacement_key); |
1157 t_urls.push_back(MakePrepopulatedTemplateURLData(name, keyword, | 1161 t_urls.push_back(MakePrepopulatedTemplateURLData(name, keyword, |
1158 search_url, suggest_url, instant_url, image_url, new_tab_url, | 1162 search_url, suggest_url, instant_url, image_url, new_tab_url, |
1159 search_url_post_params, suggest_url_post_params, | 1163 contextual_search_url, search_url_post_params, |
1160 instant_url_post_params, image_url_post_params, | 1164 suggest_url_post_params, instant_url_post_params, |
1161 favicon_url, encoding, *alternate_urls, search_terms_replacement_key, | 1165 image_url_post_params, favicon_url, encoding, *alternate_urls, |
1162 id).release()); | 1166 search_terms_replacement_key, id).release()); |
1163 } | 1167 } |
1164 } | 1168 } |
1165 return t_urls.Pass(); | 1169 return t_urls.Pass(); |
1166 } | 1170 } |
1167 | 1171 |
1168 scoped_ptr<TemplateURLData> | 1172 scoped_ptr<TemplateURLData> |
1169 MakePrepopulatedTemplateURLDataFromPrepopulateEngine( | 1173 MakePrepopulatedTemplateURLDataFromPrepopulateEngine( |
1170 const PrepopulatedEngine& engine) { | 1174 const PrepopulatedEngine& engine) { |
1171 base::ListValue alternate_urls; | 1175 base::ListValue alternate_urls; |
1172 if (engine.alternate_urls) { | 1176 if (engine.alternate_urls) { |
1173 for (size_t i = 0; i < engine.alternate_urls_size; ++i) | 1177 for (size_t i = 0; i < engine.alternate_urls_size; ++i) |
1174 alternate_urls.AppendString(std::string(engine.alternate_urls[i])); | 1178 alternate_urls.AppendString(std::string(engine.alternate_urls[i])); |
1175 } | 1179 } |
1176 | 1180 |
1177 return MakePrepopulatedTemplateURLData(base::WideToUTF16(engine.name), | 1181 return MakePrepopulatedTemplateURLData(base::WideToUTF16(engine.name), |
1178 base::WideToUTF16(engine.keyword), | 1182 base::WideToUTF16(engine.keyword), |
1179 engine.search_url, | 1183 engine.search_url, |
1180 engine.suggest_url, | 1184 engine.suggest_url, |
1181 engine.instant_url, | 1185 engine.instant_url, |
1182 engine.image_url, | 1186 engine.image_url, |
1183 engine.new_tab_url, | 1187 engine.new_tab_url, |
| 1188 engine.contextual_search_url, |
1184 engine.search_url_post_params, | 1189 engine.search_url_post_params, |
1185 engine.suggest_url_post_params, | 1190 engine.suggest_url_post_params, |
1186 engine.instant_url_post_params, | 1191 engine.instant_url_post_params, |
1187 engine.image_url_post_params, | 1192 engine.image_url_post_params, |
1188 engine.favicon_url, | 1193 engine.favicon_url, |
1189 engine.encoding, | 1194 engine.encoding, |
1190 alternate_urls, | 1195 alternate_urls, |
1191 engine.search_terms_replacement_key, | 1196 engine.search_terms_replacement_key, |
1192 engine.id); | 1197 engine.id); |
1193 } | 1198 } |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1327 } | 1332 } |
1328 | 1333 |
1329 GURL GetLogoURL(const TemplateURL& template_url, LogoSize size) { | 1334 GURL GetLogoURL(const TemplateURL& template_url, LogoSize size) { |
1330 if (GetEngineType(template_url) != SEARCH_ENGINE_GOOGLE) | 1335 if (GetEngineType(template_url) != SEARCH_ENGINE_GOOGLE) |
1331 return GURL(); | 1336 return GURL(); |
1332 return GURL((size == LOGO_200_PERCENT) ? | 1337 return GURL((size == LOGO_200_PERCENT) ? |
1333 google_logos.logo_200_percent_url : google_logos.logo_100_percent_url); | 1338 google_logos.logo_200_percent_url : google_logos.logo_100_percent_url); |
1334 } | 1339 } |
1335 | 1340 |
1336 } // namespace TemplateURLPrepopulateData | 1341 } // namespace TemplateURLPrepopulateData |
OLD | NEW |