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 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_AUTOCOMPLETE_BUILTIN_PROVIDER_H_ 6 #define CHROME_BROWSER_AUTOCOMPLETE_BUILTIN_PROVIDER_H_ 7 8 #include <vector> 9 10 #include "base/basictypes.h" 11 #include "base/compiler_specific.h" 12 #include "base/strings/string16.h" 13 #include "components/omnibox/autocomplete_match.h" 14 #include "components/omnibox/autocomplete_provider.h" 15 16 // This is the provider for built-in URLs, such as about:settings and 17 // chrome://version. 18 class BuiltinProvider : public AutocompleteProvider { 19 public: 20 BuiltinProvider(); 21 22 // AutocompleteProvider: 23 virtual void Start(const AutocompleteInput& input, 24 bool minimal_changes) OVERRIDE; 25 26 private: 27 virtual ~BuiltinProvider(); 28 29 typedef std::vector<base::string16> Builtins; 30 31 static const int kRelevance; 32 33 void AddMatch(const base::string16& match_string, 34 const base::string16& inline_completion, 35 const ACMatchClassifications& styles); 36 37 Builtins builtins_; 38 39 DISALLOW_COPY_AND_ASSIGN(BuiltinProvider); 40 }; 41 42 #endif // CHROME_BROWSER_AUTOCOMPLETE_BUILTIN_PROVIDER_H_ 43