Chromium Code Reviews| Index: chrome/browser/search_engines/search_provider_install_state_impl.cc |
| diff --git a/chrome/browser/search_engines/search_provider_install_state_impl.cc b/chrome/browser/search_engines/search_provider_install_state_impl.cc |
| index 3d9a9378133b7506dc941ce6c37b3bd2ebe54c11..1310e3d0c449805c7c1e4ffa96e56ade92b4aa61 100644 |
| --- a/chrome/browser/search_engines/search_provider_install_state_impl.cc |
| +++ b/chrome/browser/search_engines/search_provider_install_state_impl.cc |
| @@ -11,7 +11,6 @@ |
| #include "chrome/browser/search_engines/template_url_service_factory.h" |
| #include "chrome/browser/search_engines/ui_thread_search_terms_data.h" |
| #include "chrome/common/search_provider.mojom.h" |
| -#include "content/public/browser/owned_interface.h" |
| #include "content/public/browser/render_process_host.h" |
| #include "services/shell/public/cpp/interface_registry.h" |
| #include "url/gurl.h" |
| @@ -26,6 +25,7 @@ SearchProviderInstallStateImpl::SearchProviderInstallStateImpl( |
| GoogleURLTrackerFactory::GetForProfile(profile), |
| content::RenderProcessHost::FromID(render_process_id)), |
| is_off_the_record_(profile->IsOffTheRecord()), |
| + binding_(this), |
| weak_factory_(this) { |
| // This is initialized by RenderProcessHostImpl. Do not add any non-trivial |
| // initialization here. Instead do it lazily when required. |
| @@ -36,9 +36,22 @@ SearchProviderInstallStateImpl::~SearchProviderInstallStateImpl() { |
| DCHECK_CURRENTLY_ON(BrowserThread::IO); |
| } |
| -void SearchProviderInstallStateImpl::Bind( |
| +// static |
| +void SearchProviderInstallStateImpl::Create( |
| + int render_process_id, |
| + Profile* profile, |
| + chrome::mojom::SearchProviderInstallStateRequest request) { |
| + BrowserThread::PostTask( |
| + BrowserThread::IO, FROM_HERE, |
| + base::Bind(&SearchProviderInstallStateImpl::BindOnIOThread, |
| + base::Unretained(new SearchProviderInstallStateImpl( |
|
dcheng
2016/07/25 17:01:33
I would personally prefer a small comment that men
tibell
2016/07/26 00:42:03
Done.
|
| + render_process_id, profile)), |
| + base::Passed(std::move(request)))); |
|
dcheng
2016/07/25 17:01:33
Nit: base::Passed(&request)
tibell
2016/07/26 00:42:03
Done.
|
| +} |
| + |
| +void SearchProviderInstallStateImpl::BindOnIOThread( |
| chrome::mojom::SearchProviderInstallStateRequest request) { |
| - binding_set_.AddBinding(this, std::move(request)); |
| + binding_.Bind(std::move(request)); |
| } |
| chrome::mojom::InstallState |