Index: components/search_engines/template_url_service.cc |
diff --git a/components/search_engines/template_url_service.cc b/components/search_engines/template_url_service.cc |
index 22e2db0b3fa16c320df785db633dc5f7ab4c8bfa..fdd7b560fe75144957932d13889b2729c2695a7b 100644 |
--- a/components/search_engines/template_url_service.cc |
+++ b/components/search_engines/template_url_service.cc |
@@ -395,6 +395,11 @@ bool TemplateURLService::CanAddAutogeneratedKeyword( |
CanAddAutogeneratedKeywordForHost(url.host()); |
} |
+bool TemplateURLService::ShowInDefaultList(const TemplateURL* t_url) { |
+ return t_url == default_search_provider_ || t_url->prepopulate_id() > 0 || |
+ t_url->created_by_policy(); |
+} |
+ |
void TemplateURLService::AddMatchingKeywords( |
const base::string16& prefix, |
bool supports_replacement_only, |
@@ -477,8 +482,6 @@ TemplateURL* TemplateURLService::AddExtensionControlledTURL( |
DCHECK_EQ(kInvalidTemplateURLID, template_url->id()); |
DCHECK(info); |
DCHECK_NE(TemplateURL::NORMAL, template_url->type()); |
- DCHECK_EQ(info->wants_to_be_default_engine, |
- template_url->show_in_default_list()); |
DCHECK( |
!FindTemplateURLForExtension(info->extension_id, template_url->type())); |
template_url->extension_info_.swap(info); |
@@ -492,6 +495,9 @@ TemplateURL* TemplateURLService::AddExtensionControlledTURL( |
NotifyObservers(); |
} |
+ DCHECK_EQ(template_url_ptr->extension_info_->wants_to_be_default_engine, |
+ ShowInDefaultList(template_url_ptr)); |
Peter Kasting
2016/11/10 06:41:07
Hmm... is this safe?
In the future, if ShowInDefa
ltian
2016/11/11 03:52:13
I guess for most cases it is fine because within U
|
+ |
return template_url_ptr; |
} |
@@ -1244,7 +1250,6 @@ syncer::SyncData TemplateURLService::CreateSyncDataFromTemplateURL( |
se_specifics->set_date_created(turl.date_created().ToInternalValue()); |
se_specifics->set_input_encodings( |
base::JoinString(turl.input_encodings(), ";")); |
- se_specifics->set_show_in_default_list(turl.show_in_default_list()); |
se_specifics->set_suggestions_url(turl.suggestions_url()); |
se_specifics->set_prepopulate_id(turl.prepopulate_id()); |
se_specifics->set_instant_url(turl.instant_url()); |
@@ -1324,7 +1329,6 @@ TemplateURLService::CreateTemplateURLFromTemplateURLAndSyncData( |
data.instant_url_post_params = specifics.instant_url_post_params(); |
data.image_url_post_params = specifics.image_url_post_params(); |
data.favicon_url = GURL(specifics.favicon_url()); |
- data.show_in_default_list = specifics.show_in_default_list(); |
data.safe_for_autoreplace = specifics.safe_for_autoreplace(); |
data.input_encodings = base::SplitString( |
specifics.input_encodings(), ";", |
@@ -1641,8 +1645,7 @@ bool TemplateURLService::CanAddAutogeneratedKeywordForHost( |
} |
bool TemplateURLService::CanReplace(const TemplateURL* t_url) { |
- return (t_url != default_search_provider_ && !t_url->show_in_default_list() && |
- t_url->safe_for_autoreplace()); |
+ return !ShowInDefaultList(t_url) && t_url->safe_for_autoreplace(); |
} |
TemplateURL* TemplateURLService::FindNonExtensionTemplateURLForKeyword( |
@@ -1967,7 +1970,6 @@ bool TemplateURLService::ApplyDefaultSearchChangeNoMetrics( |
FindPrepopulatedTemplateURL(data->prepopulate_id); |
} |
TemplateURLData new_data(*data); |
- new_data.show_in_default_list = true; |
if (default_search_provider_) { |
UpdateNoNotify(default_search_provider_, TemplateURL(new_data)); |
} else { |