| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "components/omnibox/browser/keyword_provider.h" | 5 #include "components/omnibox/browser/keyword_provider.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/macros.h" | 10 #include "base/macros.h" |
| 11 #include "base/strings/string16.h" | 11 #include "base/strings/string16.h" |
| 12 #include "base/strings/string_util.h" | 12 #include "base/strings/string_util.h" |
| 13 #include "base/strings/utf_string_conversions.h" | 13 #include "base/strings/utf_string_conversions.h" |
| 14 #include "base/trace_event/trace_event.h" |
| 14 #include "components/metrics/proto/omnibox_input_type.pb.h" | 15 #include "components/metrics/proto/omnibox_input_type.pb.h" |
| 15 #include "components/omnibox/browser/autocomplete_match.h" | 16 #include "components/omnibox/browser/autocomplete_match.h" |
| 16 #include "components/omnibox/browser/autocomplete_provider_client.h" | 17 #include "components/omnibox/browser/autocomplete_provider_client.h" |
| 17 #include "components/omnibox/browser/autocomplete_provider_listener.h" | 18 #include "components/omnibox/browser/autocomplete_provider_listener.h" |
| 18 #include "components/omnibox/browser/keyword_extensions_delegate.h" | 19 #include "components/omnibox/browser/keyword_extensions_delegate.h" |
| 19 #include "components/omnibox/browser/omnibox_field_trial.h" | 20 #include "components/omnibox/browser/omnibox_field_trial.h" |
| 20 #include "components/omnibox/browser/search_provider.h" | 21 #include "components/omnibox/browser/search_provider.h" |
| 21 #include "components/search_engines/template_url.h" | 22 #include "components/search_engines/template_url.h" |
| 22 #include "components/search_engines/template_url_service.h" | 23 #include "components/search_engines/template_url_service.h" |
| 23 #include "grit/components_strings.h" | 24 #include "grit/components_strings.h" |
| (...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 201 const AutocompleteInput& input) { | 202 const AutocompleteInput& input) { |
| 202 // A verbatim match is allowed to be the default match. | 203 // A verbatim match is allowed to be the default match. |
| 203 return CreateAutocompleteMatch( | 204 return CreateAutocompleteMatch( |
| 204 GetTemplateURLService()->GetTemplateURLForKeyword(keyword), | 205 GetTemplateURLService()->GetTemplateURLForKeyword(keyword), |
| 205 keyword.length(), input, keyword.length(), | 206 keyword.length(), input, keyword.length(), |
| 206 SplitReplacementStringFromInput(text, true), true, 0); | 207 SplitReplacementStringFromInput(text, true), true, 0); |
| 207 } | 208 } |
| 208 | 209 |
| 209 void KeywordProvider::Start(const AutocompleteInput& input, | 210 void KeywordProvider::Start(const AutocompleteInput& input, |
| 210 bool minimal_changes) { | 211 bool minimal_changes) { |
| 212 TRACE_EVENT0("omnibox", "KeywordProvider::Start"); |
| 211 // This object ensures we end keyword mode if we exit the function without | 213 // This object ensures we end keyword mode if we exit the function without |
| 212 // toggling keyword mode to on. | 214 // toggling keyword mode to on. |
| 213 ScopedEndExtensionKeywordMode keyword_mode_toggle(extensions_delegate_.get()); | 215 ScopedEndExtensionKeywordMode keyword_mode_toggle(extensions_delegate_.get()); |
| 214 | 216 |
| 215 matches_.clear(); | 217 matches_.clear(); |
| 216 | 218 |
| 217 if (!minimal_changes) { | 219 if (!minimal_changes) { |
| 218 done_ = true; | 220 done_ = true; |
| 219 | 221 |
| 220 // Input has changed. Increment the input ID so that we can discard any | 222 // Input has changed. Increment the input ID so that we can discard any |
| (...skipping 275 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 496 ACMatchClassification::NONE, &match->contents_class); | 498 ACMatchClassification::NONE, &match->contents_class); |
| 497 } | 499 } |
| 498 } | 500 } |
| 499 | 501 |
| 500 TemplateURLService* KeywordProvider::GetTemplateURLService() const { | 502 TemplateURLService* KeywordProvider::GetTemplateURLService() const { |
| 501 // Make sure the model is loaded. This is cheap and quickly bails out if | 503 // Make sure the model is loaded. This is cheap and quickly bails out if |
| 502 // the model is already loaded. | 504 // the model is already loaded. |
| 503 model_->Load(); | 505 model_->Load(); |
| 504 return model_; | 506 return model_; |
| 505 } | 507 } |
| OLD | NEW |