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

Unified Diff: chrome/browser/autocomplete/autocomplete_controller.h

Issue 10909130: autocomplete: Add AutocompleteProvider::Type enum. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: more indentation changes 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
Index: chrome/browser/autocomplete/autocomplete_controller.h
diff --git a/chrome/browser/autocomplete/autocomplete_controller.h b/chrome/browser/autocomplete/autocomplete_controller.h
index c66d024402b98bfdeb0c4485b448c26fcaeb1d77..15fe1810441fb6ff2259554819679645c1f8c6c7 100644
--- a/chrome/browser/autocomplete/autocomplete_controller.h
+++ b/chrome/browser/autocomplete/autocomplete_controller.h
@@ -14,11 +14,11 @@
#include "chrome/browser/autocomplete/autocomplete_provider.h"
#include "chrome/browser/autocomplete/autocomplete_provider_listener.h"
#include "chrome/browser/autocomplete/autocomplete_result.h"
+#include "chrome/browser/autocomplete/keyword_provider.h"
+#include "chrome/browser/autocomplete/search_provider.h"
class AutocompleteControllerDelegate;
-class KeywordProvider;
class Profile;
-class SearchProvider;
class ZeroSuggestProvider;
// The AutocompleteController is the center of the autocomplete system. A
@@ -50,17 +50,33 @@ class AutocompleteController : public AutocompleteProviderListener {
// second to set the providers to some known testing providers. The default
// providers will be overridden and the controller will take ownership of the
// providers, Release()ing them on destruction.
+ //
+ // |provider_types| is a bitmap containing AutocompleteProvider::Type values
+ // that will (potentially, depending on platform, flags, etc.) be
+ // instantiated.
AutocompleteController(Profile* profile,
- AutocompleteControllerDelegate* delegate);
+ AutocompleteControllerDelegate* delegate,
+ int provider_types);
#ifdef UNIT_TEST
+ // Inlined since UNIT_TEST may or may not have been defined when compiling the
+ // .cc file.
Peter Kasting 2012/09/11 00:05:39 Nit: Comment not really necessary
Daniel Erat 2012/09/11 00:42:19 Done.
AutocompleteController(const ACProviders& providers, Profile* profile)
Peter Kasting 2012/09/11 00:05:39 So what things are left using this? Can we TODO t
Daniel Erat 2012/09/11 00:42:19 chrome/browser/autocomplete/autocomplete_provider_
: delegate_(NULL),
providers_(providers),
keyword_provider_(NULL),
search_provider_(NULL),
+ zero_suggest_provider_(NULL),
done_(true),
in_start_(false),
+ in_zero_suggest_(false),
profile_(profile) {
+ for (ACProviders::iterator it = providers_.begin();
+ it != providers_.end(); ++it) {
+ if ((*it)->type() == AutocompleteProvider::TYPE_SEARCH)
+ search_provider_ = static_cast<SearchProvider*>(*it);
+ else if ((*it)->type() == AutocompleteProvider::TYPE_KEYWORD)
+ keyword_provider_ = static_cast<KeywordProvider*>(*it);
+ }
}
#endif
~AutocompleteController();
@@ -128,14 +144,6 @@ class AutocompleteController : public AutocompleteProviderListener {
// the popup to ensure it's not showing an out-of-date query.
void ExpireCopiedEntries();
-#ifdef UNIT_TEST
- void set_search_provider(SearchProvider* provider) {
- search_provider_ = provider;
- }
- void set_keyword_provider(KeywordProvider* provider) {
- keyword_provider_ = provider;
- }
-#endif
SearchProvider* search_provider() const { return search_provider_; }
KeywordProvider* keyword_provider() const { return keyword_provider_; }

Powered by Google App Engine
This is Rietveld 408576698