Index: chrome/browser/search_engines/default_search_manager.h |
diff --git a/chrome/browser/search_engines/default_search_manager.h b/chrome/browser/search_engines/default_search_manager.h |
index c8f08a4c30acb983bb88f40c7e22fd5e1d93a7ef..44abb81284572e886c4895efa255b41080bad74c 100644 |
--- a/chrome/browser/search_engines/default_search_manager.h |
+++ b/chrome/browser/search_engines/default_search_manager.h |
@@ -5,6 +5,7 @@ |
#ifndef CHROME_BROWSER_SEARCH_ENGINES_DEFAULT_SEARCH_MANAGER_H_ |
#define CHROME_BROWSER_SEARCH_ENGINES_DEFAULT_SEARCH_MANAGER_H_ |
+#include "base/callback.h" |
#include "base/macros.h" |
#include "base/memory/scoped_ptr.h" |
#include "base/prefs/pref_change_registrar.h" |
@@ -30,6 +31,8 @@ struct TemplateURLData; |
class DefaultSearchManager { |
public: |
+ static const char kDefaultSearchProviderDataPrefName[]; |
+ |
static const char kID[]; |
static const char kShortName[]; |
static const char kKeyword[]; |
@@ -68,7 +71,12 @@ class DefaultSearchManager { |
FROM_POLICY, |
}; |
- explicit DefaultSearchManager(PrefService* pref_service); |
+ |
Peter Kasting
2014/05/03 00:28:18
Nit: Extra newline
erikwright (departed)
2014/05/05 01:49:38
Done.
|
+ typedef base::Callback<void(const TemplateURLData*, Source)> ObserverCallback; |
+ |
+ DefaultSearchManager(PrefService* pref_service, |
+ const ObserverCallback& change_observer); |
+ |
~DefaultSearchManager(); |
// Register prefs needed for tracking the default search provider. |
@@ -78,9 +86,10 @@ class DefaultSearchManager { |
static void AddPrefValueToMap(base::DictionaryValue* value, |
PrefValueMap* pref_value_map); |
- // Gets a pointer to the current DefaultSearchEngine. If NULL, indicates that |
- // Default Search is explicitly disabled. |
- TemplateURLData* GetDefaultSearchEngine() const; |
+ // Gets a pointer to the current Default Search Engine. If NULL, indicates |
+ // that Default Search is explicitly disabled. |source|, if not NULL, will be |
+ // filled in with the source of the result. |
+ TemplateURLData* GetDefaultSearchEngine(Source* source) const; |
// Write default search provider data to |pref_service_|. |
void SetUserSelectedDefaultSearchEngine(const TemplateURLData& data); |
@@ -99,28 +108,36 @@ class DefaultSearchManager { |
// engine will be defined by policy, extensions, or pre-populated data. |
void ClearUserSelectedDefaultSearchEngine(); |
- // Determines the source of the current default search provider value. |
- Source GetDefaultSearchEngineSource() const; |
- |
private: |
// Handle changes to kDefaultSearchProviderData pref. This includes sync and |
- // policy changes. |
+ // policy changes. Calls |LoadDefaultSearchEngineFromPrefs| and |
Peter Kasting
2014/05/03 00:28:18
Nit: Don't put pipes around function names; use a
erikwright (departed)
2014/05/05 01:49:38
Done.
|
+ // |NotifyObserver| if the effective DSE might have changed. |
void OnDefaultSearchPrefChanged(); |
- // Handle changes to kSearchProviderOverrides pref, and update necessary |
- // members. |
+ // Handle changes to kSearchProviderOverrides pref. Calls |
Peter Kasting
2014/05/03 00:28:18
Nit: Handle -> Handles
erikwright (departed)
2014/05/05 01:49:38
Done.
|
+ // |LoadPrepopulatedDefaultSearch| and |NotifyObserver| if the effective DSE |
+ // might have changed. |
void OnOverridesPrefChanged(); |
- // Update |default_search_controlled_by_policy_|. |
- void UpdatePolicyStatus(); |
- |
- // Merge data from prefs with prepopulated data. |
+ // Updates |prefs_default_search_| with values from its corresponding |
+ // pre-populated search provider record, if any. |
void MergePrefsDataWithPrepopulated(); |
- // Read default search provider data from |pref_service_|. |
- bool ReadDefaultSearchEngineFromPrefs(TemplateURLData** data); |
+ // Read default search provider data from |pref_service_|, updating |
Peter Kasting
2014/05/03 00:28:18
Nit: Read -> Reads (2 places)
erikwright (departed)
2014/05/05 01:49:38
Done.
|
+ // |prefs_default_search_| and |default_search_controlled_by_policy_|. |
+ // Will invoke |MergePrefsDataWithPrepopulated|. |
Peter Kasting
2014/05/03 00:28:18
Nit: Will invoke -> Invokes (or Calls) (2 places)
erikwright (departed)
2014/05/05 01:49:38
Done.
|
+ void LoadDefaultSearchEngineFromPrefs(); |
+ |
+ // Read pre-populated search providers, which may be built-in or overridden by |
+ // kSearchProviderOverrides. Updates |fallback_default_search_|. Will invoke |
+ // |MergePrefsDataWithPrepopulated|. |
+ void LoadPrepopulatedDefaultSearch(); |
+ |
+ // Invokes |change_observer_| if it is not NULL. |
+ void NotifyObserver(); |
PrefService* pref_service_; |
+ const ObserverCallback change_observer_; |
PrefChangeRegistrar pref_change_registrar_; |
scoped_ptr<TemplateURLData> fallback_default_search_; |