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