Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(199)

Side by Side Diff: components/search_engines/template_url_service.h

Issue 1211083006: Move TemplateURLService preferences registration to the component (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #ifndef COMPONENTS_SEARCH_ENGINES_TEMPLATE_URL_SERVICE_H_ 5 #ifndef COMPONENTS_SEARCH_ENGINES_TEMPLATE_URL_SERVICE_H_
6 #define COMPONENTS_SEARCH_ENGINES_TEMPLATE_URL_SERVICE_H_ 6 #define COMPONENTS_SEARCH_ENGINES_TEMPLATE_URL_SERVICE_H_
7 7
8 #include <list> 8 #include <list>
9 #include <map> 9 #include <map>
10 #include <set> 10 #include <set>
(...skipping 27 matching lines...) Expand all
38 38
39 namespace rappor { 39 namespace rappor {
40 class RapporService; 40 class RapporService;
41 } 41 }
42 42
43 namespace syncer { 43 namespace syncer {
44 class SyncData; 44 class SyncData;
45 class SyncErrorFactory; 45 class SyncErrorFactory;
46 } 46 }
47 47
48 namespace user_prefs {
49 class PrefRegistrySyncable;
50 }
51
48 // TemplateURLService is the backend for keywords. It's used by 52 // TemplateURLService is the backend for keywords. It's used by
49 // KeywordAutocomplete. 53 // KeywordAutocomplete.
50 // 54 //
51 // TemplateURLService stores a vector of TemplateURLs. The TemplateURLs are 55 // TemplateURLService stores a vector of TemplateURLs. The TemplateURLs are
52 // persisted to the database maintained by KeywordWebDataService. 56 // persisted to the database maintained by KeywordWebDataService.
53 // *ALL* mutations to the TemplateURLs must funnel through TemplateURLService. 57 // *ALL* mutations to the TemplateURLs must funnel through TemplateURLService.
54 // This allows TemplateURLService to notify listeners of changes as well as keep 58 // This allows TemplateURLService to notify listeners of changes as well as keep
55 // the database in sync. 59 // the database in sync.
56 // 60 //
57 // TemplateURLService does not load the vector of TemplateURLs in its 61 // TemplateURLService does not load the vector of TemplateURLs in its
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 scoped_ptr<SearchTermsData> search_terms_data, 95 scoped_ptr<SearchTermsData> search_terms_data,
92 const scoped_refptr<KeywordWebDataService>& web_data_service, 96 const scoped_refptr<KeywordWebDataService>& web_data_service,
93 scoped_ptr<TemplateURLServiceClient> client, 97 scoped_ptr<TemplateURLServiceClient> client,
94 GoogleURLTracker* google_url_tracker, 98 GoogleURLTracker* google_url_tracker,
95 rappor::RapporService* rappor_service, 99 rappor::RapporService* rappor_service,
96 const base::Closure& dsp_change_callback); 100 const base::Closure& dsp_change_callback);
97 // The following is for testing. 101 // The following is for testing.
98 TemplateURLService(const Initializer* initializers, const int count); 102 TemplateURLService(const Initializer* initializers, const int count);
99 ~TemplateURLService() override; 103 ~TemplateURLService() override;
100 104
105 // Register Profile preferences in |registry|.
106 static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry);
107
101 // Removes any unnecessary characters from a user input keyword. 108 // Removes any unnecessary characters from a user input keyword.
102 // This removes the leading scheme, "www." and any trailing slash. 109 // This removes the leading scheme, "www." and any trailing slash.
103 static base::string16 CleanUserInputKeyword(const base::string16& keyword); 110 static base::string16 CleanUserInputKeyword(const base::string16& keyword);
104 111
105 // Returns true if there is no TemplateURL that conflicts with the 112 // Returns true if there is no TemplateURL that conflicts with the
106 // keyword/url pair, or there is one but it can be replaced. If there is an 113 // keyword/url pair, or there is one but it can be replaced. If there is an
107 // existing keyword that can be replaced and template_url_to_replace is 114 // existing keyword that can be replaced and template_url_to_replace is
108 // non-NULL, template_url_to_replace is set to the keyword to replace. 115 // non-NULL, template_url_to_replace is set to the keyword to replace.
109 // 116 //
110 // |url| is the URL of the search query. This is used to prevent auto-adding 117 // |url| is the URL of the search query. This is used to prevent auto-adding
(...skipping 611 matching lines...) Expand 10 before | Expand all | Expand 10 after
722 729
723 // Helper class to manage the default search engine. 730 // Helper class to manage the default search engine.
724 DefaultSearchManager default_search_manager_; 731 DefaultSearchManager default_search_manager_;
725 732
726 scoped_ptr<GoogleURLTracker::Subscription> google_url_updated_subscription_; 733 scoped_ptr<GoogleURLTracker::Subscription> google_url_updated_subscription_;
727 734
728 DISALLOW_COPY_AND_ASSIGN(TemplateURLService); 735 DISALLOW_COPY_AND_ASSIGN(TemplateURLService);
729 }; 736 };
730 737
731 #endif // COMPONENTS_SEARCH_ENGINES_TEMPLATE_URL_SERVICE_H_ 738 #endif // COMPONENTS_SEARCH_ENGINES_TEMPLATE_URL_SERVICE_H_
OLDNEW
« no previous file with comments | « chrome/browser/search_engines/template_url_service_factory.cc ('k') | components/search_engines/template_url_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698