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

Unified Diff: chrome/browser/autocomplete/zero_suggest_provider.cc

Issue 10933023: Control zero suggest with a pref, not a switch. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix for clang compile error. Created 8 years, 3 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
« no previous file with comments | « chrome/browser/autocomplete/zero_suggest_provider.h ('k') | chrome/browser/prefs/browser_prefs.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/autocomplete/zero_suggest_provider.cc
diff --git a/chrome/browser/autocomplete/zero_suggest_provider.cc b/chrome/browser/autocomplete/zero_suggest_provider.cc
index 2357b52d0140d3304c6293328c3181adc37b76e2..2d76c9cb5cdbaf455ab889ed6ca490041f1c1b74 100644
--- a/chrome/browser/autocomplete/zero_suggest_provider.cc
+++ b/chrome/browser/autocomplete/zero_suggest_provider.cc
@@ -13,9 +13,11 @@
#include "chrome/browser/autocomplete/autocomplete_input.h"
#include "chrome/browser/autocomplete/autocomplete_match.h"
#include "chrome/browser/autocomplete/autocomplete_provider_listener.h"
+#include "chrome/browser/prefs/pref_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/search_engines/template_url_service.h"
#include "chrome/browser/search_engines/template_url_service_factory.h"
+#include "chrome/common/pref_names.h"
#include "chrome/common/url_constants.h"
#include "googleurl/src/gurl.h"
#include "net/base/load_flags.h"
@@ -28,6 +30,19 @@ namespace {
const int kMaxZeroSuggestRelevance = 100;
} // namespace
+// static
+ZeroSuggestProvider* ZeroSuggestProvider::Create(
+ AutocompleteProviderListener* listener,
+ Profile* profile) {
+ if (profile && !profile->IsOffTheRecord() && profile->GetPrefs()) {
+ std::string url_prefix = profile->GetPrefs()->GetString(
+ prefs::kExperimentalZeroSuggestUrlPrefix);
+ if (!url_prefix.empty())
+ return new ZeroSuggestProvider(listener, profile, url_prefix);
+ }
+ return NULL;
+}
+
ZeroSuggestProvider::ZeroSuggestProvider(
AutocompleteProviderListener* listener,
Profile* profile,
@@ -38,6 +53,12 @@ ZeroSuggestProvider::ZeroSuggestProvider(
template_url_service_(TemplateURLServiceFactory::GetForProfile(profile)) {
}
+// static
+void ZeroSuggestProvider::RegisterUserPrefs(PrefService* user_prefs) {
+ user_prefs->RegisterStringPref(prefs::kExperimentalZeroSuggestUrlPrefix, "",
+ PrefService::UNSYNCABLE_PREF);
+}
+
void ZeroSuggestProvider::Start(const AutocompleteInput& input,
bool /*minimal_changes*/) {
UpdateMatches(input.text());
« no previous file with comments | « chrome/browser/autocomplete/zero_suggest_provider.h ('k') | chrome/browser/prefs/browser_prefs.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698