OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 CHROME_BROWSER_AUTOCOMPLETE_AUTOCOMPLETE_CONTROLLER_H_ | 5 #ifndef CHROME_BROWSER_AUTOCOMPLETE_AUTOCOMPLETE_CONTROLLER_H_ |
6 #define CHROME_BROWSER_AUTOCOMPLETE_AUTOCOMPLETE_CONTROLLER_H_ | 6 #define CHROME_BROWSER_AUTOCOMPLETE_AUTOCOMPLETE_CONTROLLER_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
10 #include "base/gtest_prod_util.h" | 10 #include "base/gtest_prod_util.h" |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
50 typedef std::vector<scoped_refptr<AutocompleteProvider> > Providers; | 50 typedef std::vector<scoped_refptr<AutocompleteProvider> > Providers; |
51 | 51 |
52 // |provider_types| is a bitmap containing AutocompleteProvider::Type values | 52 // |provider_types| is a bitmap containing AutocompleteProvider::Type values |
53 // that will (potentially, depending on platform, flags, etc.) be | 53 // that will (potentially, depending on platform, flags, etc.) be |
54 // instantiated. |template_url_service| is used to create URLs from the | 54 // instantiated. |template_url_service| is used to create URLs from the |
55 // autocomplete results. | 55 // autocomplete results. |
56 AutocompleteController(Profile* profile, | 56 AutocompleteController(Profile* profile, |
57 TemplateURLService* template_url_service, | 57 TemplateURLService* template_url_service, |
58 AutocompleteControllerDelegate* delegate, | 58 AutocompleteControllerDelegate* delegate, |
59 int provider_types); | 59 int provider_types); |
60 ~AutocompleteController(); | 60 ~AutocompleteController() override; |
61 | 61 |
62 // Starts an autocomplete query, which continues until all providers are | 62 // Starts an autocomplete query, which continues until all providers are |
63 // done or the query is Stop()ed. It is safe to Start() a new query without | 63 // done or the query is Stop()ed. It is safe to Start() a new query without |
64 // Stop()ing the previous one. | 64 // Stop()ing the previous one. |
65 // | 65 // |
66 // See AutocompleteInput::AutocompleteInput(...) for more details regarding | 66 // See AutocompleteInput::AutocompleteInput(...) for more details regarding |
67 // |input| params. | 67 // |input| params. |
68 // | 68 // |
69 // The controller calls AutocompleteControllerDelegate::OnResultChanged() from | 69 // The controller calls AutocompleteControllerDelegate::OnResultChanged() from |
70 // inside this call at least once. If matches are available later on that | 70 // inside this call at least once. If matches are available later on that |
(...skipping 18 matching lines...) Expand all Loading... |
89 // Asks the relevant provider to delete |match|, and ensures observers are | 89 // Asks the relevant provider to delete |match|, and ensures observers are |
90 // notified of resulting changes immediately. This should only be called when | 90 // notified of resulting changes immediately. This should only be called when |
91 // no query is running. | 91 // no query is running. |
92 void DeleteMatch(const AutocompleteMatch& match); | 92 void DeleteMatch(const AutocompleteMatch& match); |
93 | 93 |
94 // Removes any entries that were copied from the last result. This is used by | 94 // Removes any entries that were copied from the last result. This is used by |
95 // the popup to ensure it's not showing an out-of-date query. | 95 // the popup to ensure it's not showing an out-of-date query. |
96 void ExpireCopiedEntries(); | 96 void ExpireCopiedEntries(); |
97 | 97 |
98 // AutocompleteProviderListener: | 98 // AutocompleteProviderListener: |
99 virtual void OnProviderUpdate(bool updated_matches) override; | 99 void OnProviderUpdate(bool updated_matches) override; |
100 | 100 |
101 // Called when an omnibox event log entry is generated. | 101 // Called when an omnibox event log entry is generated. |
102 // Populates provider_info with diagnostic information about the status | 102 // Populates provider_info with diagnostic information about the status |
103 // of various providers. In turn, calls | 103 // of various providers. In turn, calls |
104 // AutocompleteProvider::AddProviderInfo() so each provider can add | 104 // AutocompleteProvider::AddProviderInfo() so each provider can add |
105 // provider-specific information, information we want to log for a particular | 105 // provider-specific information, information we want to log for a particular |
106 // provider but not others. | 106 // provider but not others. |
107 void AddProvidersInfo(ProvidersInfo* provider_info) const; | 107 void AddProvidersInfo(ProvidersInfo* provider_info) const; |
108 | 108 |
109 // Called when a new omnibox session starts. | 109 // Called when a new omnibox session starts. |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
254 // Are we in Start()? This is used to avoid updating |result_| and sending | 254 // Are we in Start()? This is used to avoid updating |result_| and sending |
255 // notifications until Start() has been invoked on all providers. | 255 // notifications until Start() has been invoked on all providers. |
256 bool in_start_; | 256 bool in_start_; |
257 | 257 |
258 TemplateURLService* template_url_service_; | 258 TemplateURLService* template_url_service_; |
259 | 259 |
260 DISALLOW_COPY_AND_ASSIGN(AutocompleteController); | 260 DISALLOW_COPY_AND_ASSIGN(AutocompleteController); |
261 }; | 261 }; |
262 | 262 |
263 #endif // CHROME_BROWSER_AUTOCOMPLETE_AUTOCOMPLETE_CONTROLLER_H_ | 263 #endif // CHROME_BROWSER_AUTOCOMPLETE_AUTOCOMPLETE_CONTROLLER_H_ |
OLD | NEW |