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