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

Side by Side Diff: chrome/browser/autocomplete_history_manager.cc

Issue 6211002: Don't create a WebDataService in AutoFillManagerTest tests, since that object... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 9 years, 11 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 | « no previous file | chrome/browser/autofill/autofill_manager_unittest.cc » ('j') | 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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_history_manager.h" 5 #include "chrome/browser/autocomplete_history_manager.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/string16.h" 9 #include "base/string16.h"
10 #include "base/string_number_conversions.h" 10 #include "base/string_number_conversions.h"
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after
120 form.fields.begin(); 120 form.fields.begin();
121 iter != form.fields.end(); ++iter) { 121 iter != form.fields.end(); ++iter) {
122 if (!iter->value().empty() && 122 if (!iter->value().empty() &&
123 !iter->name().empty() && 123 !iter->name().empty() &&
124 iter->form_control_type() == ASCIIToUTF16("text") && 124 iter->form_control_type() == ASCIIToUTF16("text") &&
125 !CreditCard::IsCreditCardNumber(iter->value()) && 125 !CreditCard::IsCreditCardNumber(iter->value()) &&
126 !IsSSN(iter->value())) 126 !IsSSN(iter->value()))
127 values.push_back(*iter); 127 values.push_back(*iter);
128 } 128 }
129 129
130 if (!values.empty() && web_data_service_) 130 if (!values.empty() && web_data_service_.get())
131 web_data_service_->AddFormFields(values); 131 web_data_service_->AddFormFields(values);
132 } 132 }
133 133
134 void AutocompleteHistoryManager::OnRemoveAutocompleteEntry( 134 void AutocompleteHistoryManager::OnRemoveAutocompleteEntry(
135 const string16& name, const string16& value) { 135 const string16& name, const string16& value) {
136 web_data_service_->RemoveFormValueForElementName(name, value); 136 if (web_data_service_.get())
137 web_data_service_->RemoveFormValueForElementName(name, value);
137 } 138 }
138 139
139 void AutocompleteHistoryManager::OnGetAutocompleteSuggestions( 140 void AutocompleteHistoryManager::OnGetAutocompleteSuggestions(
140 int query_id, 141 int query_id,
141 const string16& name, 142 const string16& name,
142 const string16& prefix, 143 const string16& prefix,
143 const std::vector<string16>& autofill_values, 144 const std::vector<string16>& autofill_values,
144 const std::vector<string16>& autofill_labels, 145 const std::vector<string16>& autofill_labels,
145 const std::vector<string16>& autofill_icons, 146 const std::vector<string16>& autofill_icons,
146 const std::vector<int>& autofill_unique_ids) { 147 const std::vector<int>& autofill_unique_ids) {
147 CancelPendingQuery(); 148 CancelPendingQuery();
148 149
149 query_id_ = query_id; 150 query_id_ = query_id;
150 autofill_values_ = autofill_values; 151 autofill_values_ = autofill_values;
151 autofill_labels_ = autofill_labels; 152 autofill_labels_ = autofill_labels;
152 autofill_icons_ = autofill_icons; 153 autofill_icons_ = autofill_icons;
153 autofill_unique_ids_ = autofill_unique_ids; 154 autofill_unique_ids_ = autofill_unique_ids;
154 if (!*autofill_enabled_) { 155 if (!*autofill_enabled_) {
155 SendSuggestions(NULL); 156 SendSuggestions(NULL);
156 return; 157 return;
157 } 158 }
158 159
159 pending_query_handle_ = web_data_service_->GetFormValuesForElementName( 160 if (web_data_service_.get()) {
160 name, prefix, kMaxAutocompleteMenuItems, this); 161 pending_query_handle_ = web_data_service_->GetFormValuesForElementName(
162 name, prefix, kMaxAutocompleteMenuItems, this);
163 }
161 } 164 }
162 165
163 void AutocompleteHistoryManager::OnWebDataServiceRequestDone( 166 void AutocompleteHistoryManager::OnWebDataServiceRequestDone(
164 WebDataService::Handle h, 167 WebDataService::Handle h,
165 const WDTypedResult* result) { 168 const WDTypedResult* result) {
166 DCHECK(pending_query_handle_); 169 DCHECK(pending_query_handle_);
167 pending_query_handle_ = 0; 170 pending_query_handle_ = 0;
168 171
169 if (!*autofill_enabled_) { 172 if (!*autofill_enabled_) {
170 SendSuggestions(NULL); 173 SendSuggestions(NULL);
(...skipping 14 matching lines...) Expand all
185 web_data_service_(wds), 188 web_data_service_(wds),
186 pending_query_handle_(0), 189 pending_query_handle_(0),
187 query_id_(0) { 190 query_id_(0) {
188 autofill_enabled_.Init( 191 autofill_enabled_.Init(
189 prefs::kAutoFillEnabled, profile_->GetPrefs(), NULL); 192 prefs::kAutoFillEnabled, profile_->GetPrefs(), NULL);
190 } 193 }
191 194
192 void AutocompleteHistoryManager::CancelPendingQuery() { 195 void AutocompleteHistoryManager::CancelPendingQuery() {
193 if (pending_query_handle_) { 196 if (pending_query_handle_) {
194 SendSuggestions(NULL); 197 SendSuggestions(NULL);
195 web_data_service_->CancelRequest(pending_query_handle_); 198 if (web_data_service_.get())
199 web_data_service_->CancelRequest(pending_query_handle_);
196 pending_query_handle_ = 0; 200 pending_query_handle_ = 0;
197 } 201 }
198 } 202 }
199 203
200 void AutocompleteHistoryManager::SendSuggestions( 204 void AutocompleteHistoryManager::SendSuggestions(
201 const std::vector<string16>* suggestions) { 205 const std::vector<string16>* suggestions) {
202 if (suggestions) { 206 if (suggestions) {
203 // Combine AutoFill and Autocomplete values into values and labels. 207 // Combine AutoFill and Autocomplete values into values and labels.
204 for (size_t i = 0; i < suggestions->size(); ++i) { 208 for (size_t i = 0; i < suggestions->size(); ++i) {
205 bool unique = true; 209 bool unique = true;
(...skipping 23 matching lines...) Expand all
229 autofill_icons_, 233 autofill_icons_,
230 autofill_unique_ids_)); 234 autofill_unique_ids_));
231 } 235 }
232 236
233 query_id_ = 0; 237 query_id_ = 0;
234 autofill_values_.clear(); 238 autofill_values_.clear();
235 autofill_labels_.clear(); 239 autofill_labels_.clear();
236 autofill_icons_.clear(); 240 autofill_icons_.clear();
237 autofill_unique_ids_.clear(); 241 autofill_unique_ids_.clear();
238 } 242 }
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/autofill/autofill_manager_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698