Index: chrome/browser/search_engines/template_url_prepopulate_data.cc |
diff --git a/chrome/browser/search_engines/template_url_prepopulate_data.cc b/chrome/browser/search_engines/template_url_prepopulate_data.cc |
index fa0fc4f4c4e729b12fbf103de6444a9baf3cfede..b2a857bcef5c5ab529f8b269d3a0ee8535b4c701 100644 |
--- a/chrome/browser/search_engines/template_url_prepopulate_data.cc |
+++ b/chrome/browser/search_engines/template_url_prepopulate_data.cc |
@@ -1110,16 +1110,18 @@ int GetDataVersion(PrefService* prefs) { |
kCurrentDataVersion; |
} |
-TemplateURL* MakePrepopulatedTemplateURL(Profile* profile, |
- const string16& name, |
- const string16& keyword, |
- const base::StringPiece& search_url, |
- const base::StringPiece& suggest_url, |
- const base::StringPiece& instant_url, |
- const ListValue& alternate_urls, |
- const base::StringPiece& favicon_url, |
- const base::StringPiece& encoding, |
- int id) { |
+TemplateURL* MakePrepopulatedTemplateURL( |
+ Profile* profile, |
+ const string16& name, |
+ const string16& keyword, |
+ const base::StringPiece& search_url, |
+ const base::StringPiece& suggest_url, |
+ const base::StringPiece& instant_url, |
+ const base::StringPiece& favicon_url, |
+ const base::StringPiece& encoding, |
+ const ListValue& alternate_urls, |
+ const base::StringPiece& search_terms_replacement_key, |
+ int id) { |
TemplateURLData data; |
@@ -1128,12 +1130,6 @@ TemplateURL* MakePrepopulatedTemplateURL(Profile* profile, |
data.SetURL(search_url.as_string()); |
data.suggestions_url = suggest_url.as_string(); |
data.instant_url = instant_url.as_string(); |
- for (size_t i = 0; i < alternate_urls.GetSize(); ++i) { |
- std::string alternate_url; |
- alternate_urls.GetString(i, &alternate_url); |
- DCHECK(!alternate_url.empty()); |
- data.alternate_urls.push_back(alternate_url); |
- } |
data.favicon_url = GURL(favicon_url.as_string()); |
data.show_in_default_list = true; |
data.safe_for_autoreplace = true; |
@@ -1141,6 +1137,13 @@ TemplateURL* MakePrepopulatedTemplateURL(Profile* profile, |
data.date_created = base::Time(); |
data.last_modified = base::Time(); |
data.prepopulate_id = id; |
+ for (size_t i = 0; i < alternate_urls.GetSize(); ++i) { |
+ std::string alternate_url; |
+ alternate_urls.GetString(i, &alternate_url); |
+ DCHECK(!alternate_url.empty()); |
+ data.alternate_urls.push_back(alternate_url); |
+ } |
+ data.search_terms_replacement_key = search_terms_replacement_key.as_string(); |
return new TemplateURL(profile, data); |
} |
@@ -1177,12 +1180,15 @@ void GetPrepopulatedTemplateFromPrefs(Profile* profile, |
std::string instant_url; |
ListValue empty_list; |
const ListValue* alternate_urls = &empty_list; |
+ std::string search_terms_replacement_key; |
engine->GetString("suggest_url", &suggest_url); |
engine->GetString("instant_url", &instant_url); |
engine->GetList("alternate_urls", &alternate_urls); |
+ engine->GetString("search_terms_replacement_key", |
+ &search_terms_replacement_key); |
t_urls->push_back(MakePrepopulatedTemplateURL(profile, name, keyword, |
- search_url, suggest_url, instant_url, *alternate_urls, favicon_url, |
- encoding, id)); |
+ search_url, suggest_url, instant_url, favicon_url, encoding, |
+ *alternate_urls, search_terms_replacement_key, id)); |
} |
} |
} |
@@ -1200,8 +1206,8 @@ TemplateURL* MakePrepopulatedTemplateURLFromPrepopulateEngine( |
return MakePrepopulatedTemplateURL(profile, WideToUTF16(engine.name), |
WideToUTF16(engine.keyword), engine.search_url, engine.suggest_url, |
- engine.instant_url, alternate_urls, |
- engine.favicon_url, engine.encoding, engine.id); |
+ engine.instant_url, engine.favicon_url, engine.encoding, alternate_urls, |
+ engine.search_terms_replacement_key, engine.id); |
} |
void GetPrepopulatedEngines(Profile* profile, |