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

Unified Diff: chrome/browser/search_engines/default_search_manager.h

Issue 355853002: Componentize TemplateURLPrepopulateData, DefaultSearchManager and DefaultSearchPolicyHandler (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Missing comma in gyp Created 6 years, 6 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 side-by-side diff with in-line comments
Download patch
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
deleted file mode 100644
index 0a295c5cd7d27c243bdb45397f80273d44b6a38d..0000000000000000000000000000000000000000
--- a/chrome/browser/search_engines/default_search_manager.h
+++ /dev/null
@@ -1,164 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#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"
-
-namespace base {
-class DictionaryValue;
-}
-
-namespace user_prefs {
-class PrefRegistrySyncable;
-}
-
-class PrefService;
-class PrefValueMap;
-struct TemplateURLData;
-
-// DefaultSearchManager handles the loading and writing of the user's default
-// search engine selection to and from prefs.
-class DefaultSearchManager {
- public:
- static const char kDefaultSearchProviderDataPrefName[];
-
- static const char kID[];
- static const char kShortName[];
- static const char kKeyword[];
- static const char kPrepopulateID[];
- static const char kSyncGUID[];
-
- static const char kURL[];
- static const char kSuggestionsURL[];
- static const char kInstantURL[];
- static const char kImageURL[];
- static const char kNewTabURL[];
- static const char kFaviconURL[];
- static const char kOriginatingURL[];
-
- static const char kSearchURLPostParams[];
- static const char kSuggestionsURLPostParams[];
- static const char kInstantURLPostParams[];
- static const char kImageURLPostParams[];
-
- static const char kSafeForAutoReplace[];
- static const char kInputEncodings[];
-
- static const char kDateCreated[];
- static const char kLastModified[];
-
- static const char kUsageCount[];
- static const char kAlternateURLs[];
- static const char kSearchTermsReplacementKey[];
- static const char kCreatedByPolicy[];
- static const char kDisabledByPolicy[];
-
- enum Source {
- FROM_FALLBACK = 0,
- FROM_USER,
- FROM_EXTENSION,
- FROM_POLICY,
- };
-
- 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.
- static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry);
-
- // Save default search provider pref values into the map provided.
- static void AddPrefValueToMap(base::DictionaryValue* value,
- PrefValueMap* pref_value_map);
-
- // Testing code can call this with |disabled| set to true to cause
- // GetDefaultSearchEngine() to return NULL instead of
- // |fallback_default_search_| in cases where the DSE source is FROM_FALLBACK.
- static void SetFallbackSearchEnginesDisabledForTesting(bool disabled);
-
- // 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;
-
- // Gets the source of the current Default Search Engine value.
- Source GetDefaultSearchEngineSource() const;
-
- // Write default search provider data to |pref_service_|.
- void SetUserSelectedDefaultSearchEngine(const TemplateURLData& data);
-
- // Override the default search provider with an extension.
- void SetExtensionControlledDefaultSearchEngine(const TemplateURLData& data);
-
- // Clear the extension-provided default search engine. Does not explicitly
- // disable Default Search. The new current default search engine will be
- // defined by policy, extensions, or pre-populated data.
- void ClearExtensionControlledDefaultSearchEngine();
-
- // Clear the user's default search provider choice from |pref_service_|. Does
- // not explicitly disable Default Search. The new default search
- // engine will be defined by policy, extensions, or pre-populated data.
- void ClearUserSelectedDefaultSearchEngine();
-
- private:
- // Handles changes to kDefaultSearchProviderData pref. This includes sync and
- // policy changes. Calls LoadDefaultSearchEngineFromPrefs() and
- // NotifyObserver() if the effective DSE might have changed.
- void OnDefaultSearchPrefChanged();
-
- // Handles changes to kSearchProviderOverrides pref. Calls
- // LoadPrepopulatedDefaultSearch() and NotifyObserver() if the effective DSE
- // might have changed.
- void OnOverridesPrefChanged();
-
- // Updates |prefs_default_search_| with values from its corresponding
- // pre-populated search provider record, if any.
- void MergePrefsDataWithPrepopulated();
-
- // Reads default search provider data from |pref_service_|, updating
- // |prefs_default_search_| and |default_search_controlled_by_policy_|.
- // Invokes MergePrefsDataWithPrepopulated().
- void LoadDefaultSearchEngineFromPrefs();
-
- // Reads pre-populated search providers, which will be built-in or overridden
- // by kSearchProviderOverrides. Updates |fallback_default_search_|. 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_;
-
- // Default search engine provided by pre-populated data or by the
- // |kSearchProviderOverrides| pref. This will be used when no other default
- // search engine has been selected.
- scoped_ptr<TemplateURLData> fallback_default_search_;
-
- // Default search engine provided by prefs (either user prefs or policy
- // prefs). This will be null if no value was set in the pref store.
- scoped_ptr<TemplateURLData> extension_default_search_;
-
- // Default search engine provided by extension (usings Settings Override API).
- // This will be null if there are no extensions installed which provide
- // default search engines.
- scoped_ptr<TemplateURLData> prefs_default_search_;
-
- // True if the default search is currently enforced by policy.
- bool default_search_controlled_by_policy_;
-
- DISALLOW_COPY_AND_ASSIGN(DefaultSearchManager);
-};
-
-#endif // CHROME_BROWSER_SEARCH_ENGINES_DEFAULT_SEARCH_MANAGER_H_

Powered by Google App Engine
This is Rietveld 408576698