| Index: chrome/browser/search_engines/search_provider_install_data.h
|
| diff --git a/chrome/browser/search_engines/search_provider_install_data.h b/chrome/browser/search_engines/search_provider_install_data.h
|
| index dc196eaa55df71bddc5c08a39c5a52fd1d19da32..853e4493e7b8cce4ead52dfbf858a5f6e9ebd337 100644
|
| --- a/chrome/browser/search_engines/search_provider_install_data.h
|
| +++ b/chrome/browser/search_engines/search_provider_install_data.h
|
| @@ -13,11 +13,12 @@
|
| #include "base/memory/scoped_ptr.h"
|
| #include "base/memory/scoped_vector.h"
|
| #include "base/memory/weak_ptr.h"
|
| -#include "chrome/browser/webdata/web_data_service.h"
|
|
|
| class GURL;
|
| +class Profile;
|
| class SearchHostToURLsMap;
|
| class TemplateURL;
|
| +class TemplateURLService;
|
|
|
| namespace content {
|
| class RenderProcessHost;
|
| @@ -27,7 +28,7 @@ class RenderProcessHost;
|
| // loading the data on demand (when CallWhenLoaded is called) and then throwing
|
| // away the results after the callbacks are done, so the results are always up
|
| // to date with what is in the database.
|
| -class SearchProviderInstallData : public WebDataServiceConsumer {
|
| +class SearchProviderInstallData {
|
| public:
|
| enum State {
|
| // The search provider is not installed.
|
| @@ -61,13 +62,9 @@ class SearchProviderInstallData : public WebDataServiceConsumer {
|
| void OnGoogleURLChange(const std::string& google_base_url);
|
|
|
| private:
|
| - // WebDataServiceConsumer
|
| - // Notification that the keywords have been loaded.
|
| - // This is invoked from WebDataService, and should not be directly
|
| - // invoked.
|
| - virtual void OnWebDataServiceRequestDone(
|
| - WebDataService::Handle h,
|
| - const WDTypedResult* result) OVERRIDE;
|
| + // Receives a copy of the TemplateURLService's keywords on the IO thread.
|
| + void OnTemplateURLsLoaded(ScopedVector<TemplateURL> template_urls,
|
| + TemplateURL* default_provider);
|
|
|
| // Stores information about the default search provider.
|
| void SetDefault(const TemplateURL* template_url);
|
| @@ -80,14 +77,12 @@ class SearchProviderInstallData : public WebDataServiceConsumer {
|
| // install state has been loaded.
|
| void NotifyLoaded();
|
|
|
| - // The list of closures to call after the load has finished.
|
| - std::vector<base::Closure> closure_queue_;
|
| -
|
| - // Service used to store entries.
|
| - scoped_refptr<WebDataService> web_service_;
|
| + // The original data source. Only accessed on the UI thread.
|
| + TemplateURLService* template_url_service_;
|
|
|
| - // If non-zero, we're waiting on a load.
|
| - WebDataService::Handle load_handle_;
|
| + // The list of closures to call after the load has finished. If empty, there
|
| + // is no pending load.
|
| + std::vector<base::Closure> closure_queue_;
|
|
|
| // Holds results of a load that was done using this class.
|
| scoped_ptr<SearchHostToURLsMap> provider_map_;
|
|
|