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

Side by Side Diff: chrome/browser/autocomplete/zero_suggest_provider.cc

Issue 158223002: Part 5 of search provider refactoring. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase + fix indentation Created 6 years, 10 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/browser/autocomplete/zero_suggest_provider.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 #include "chrome/browser/autocomplete/zero_suggest_provider.h" 5 #include "chrome/browser/autocomplete/zero_suggest_provider.h"
6 6
7 #include "base/callback.h" 7 #include "base/callback.h"
8 #include "base/i18n/case_conversion.h" 8 #include "base/i18n/case_conversion.h"
9 #include "base/json/json_string_value_serializer.h" 9 #include "base/json/json_string_value_serializer.h"
10 #include "base/metrics/histogram.h" 10 #include "base/metrics/histogram.h"
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 ZeroSuggestProvider* ZeroSuggestProvider::Create( 77 ZeroSuggestProvider* ZeroSuggestProvider::Create(
78 AutocompleteProviderListener* listener, 78 AutocompleteProviderListener* listener,
79 Profile* profile) { 79 Profile* profile) {
80 return new ZeroSuggestProvider(listener, profile); 80 return new ZeroSuggestProvider(listener, profile);
81 } 81 }
82 82
83 void ZeroSuggestProvider::Start(const AutocompleteInput& input, 83 void ZeroSuggestProvider::Start(const AutocompleteInput& input,
84 bool /*minimal_changes*/) { 84 bool /*minimal_changes*/) {
85 } 85 }
86 86
87 void ZeroSuggestProvider::Stop(bool clear_cached_results) {
88 if (have_pending_request_)
89 LogOmniboxZeroSuggestRequest(ZERO_SUGGEST_REQUEST_INVALIDATED);
90 have_pending_request_ = false;
91 fetcher_.reset();
92 done_ = true;
93 if (clear_cached_results) {
94 query_matches_map_.clear();
95 navigation_results_.clear();
96 current_query_.clear();
97 matches_.clear();
98 }
99 }
100
101 void ZeroSuggestProvider::ResetSession() { 87 void ZeroSuggestProvider::ResetSession() {
102 // The user has started editing in the omnibox, so leave 88 // The user has started editing in the omnibox, so leave
103 // |field_trial_triggered_in_session_| unchanged and set 89 // |field_trial_triggered_in_session_| unchanged and set
104 // |field_trial_triggered_| to false since zero suggest is inactive now. 90 // |field_trial_triggered_| to false since zero suggest is inactive now.
105 field_trial_triggered_ = false; 91 field_trial_triggered_ = false;
106 Stop(true); 92 Stop(true);
107 } 93 }
108 94
109 void ZeroSuggestProvider::OnURLFetchComplete(const net::URLFetcher* source) { 95 void ZeroSuggestProvider::OnURLFetchComplete(const net::URLFetcher* source) {
110 have_pending_request_ = false; 96 have_pending_request_ = false;
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
189 input.UpdateText(result.suggestion(), base::string16::npos, input.parts()); 175 input.UpdateText(result.suggestion(), base::string16::npos, input.parts());
190 return input; 176 return input;
191 } 177 }
192 178
193 bool ZeroSuggestProvider::ShouldAppendExtraParams( 179 bool ZeroSuggestProvider::ShouldAppendExtraParams(
194 const SuggestResult& result) const { 180 const SuggestResult& result) const {
195 // We always use the default provider for search, so append the params. 181 // We always use the default provider for search, so append the params.
196 return true; 182 return true;
197 } 183 }
198 184
185 void ZeroSuggestProvider::StopSuggest() {
186 if (have_pending_request_)
187 LogOmniboxZeroSuggestRequest(ZERO_SUGGEST_REQUEST_INVALIDATED);
188 have_pending_request_ = false;
189 fetcher_.reset();
190 }
191
192 void ZeroSuggestProvider::ClearAllResults() {
193 query_matches_map_.clear();
194 navigation_results_.clear();
195 current_query_.clear();
196 matches_.clear();
197 }
198
199 void ZeroSuggestProvider::FillResults(const base::Value& root_val, 199 void ZeroSuggestProvider::FillResults(const base::Value& root_val,
200 int* verbatim_relevance, 200 int* verbatim_relevance,
201 SuggestResults* suggest_results, 201 SuggestResults* suggest_results,
202 NavigationResults* navigation_results) { 202 NavigationResults* navigation_results) {
203 base::string16 query; 203 base::string16 query;
204 const base::ListValue* root_list = NULL; 204 const base::ListValue* root_list = NULL;
205 const base::ListValue* results = NULL; 205 const base::ListValue* results = NULL;
206 const base::ListValue* relevances = NULL; 206 const base::ListValue* relevances = NULL;
207 // The response includes the query, which should be empty for ZeroSuggest 207 // The response includes the query, which should be empty for ZeroSuggest
208 // responses. 208 // responses.
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
433 match.is_history_what_you_typed_match = false; 433 match.is_history_what_you_typed_match = false;
434 match.allowed_to_be_default_match = true; 434 match.allowed_to_be_default_match = true;
435 435
436 // The placeholder suggestion for the current URL has high relevance so 436 // The placeholder suggestion for the current URL has high relevance so
437 // that it is in the first suggestion slot and inline autocompleted. It 437 // that it is in the first suggestion slot and inline autocompleted. It
438 // gets dropped as soon as the user types something. 438 // gets dropped as soon as the user types something.
439 match.relevance = verbatim_relevance_; 439 match.relevance = verbatim_relevance_;
440 440
441 return match; 441 return match;
442 } 442 }
OLDNEW
« no previous file with comments | « chrome/browser/autocomplete/zero_suggest_provider.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698