blob: 3d6bd2bf7aeca0dfbb0d5b844ea26f028abcdbc1 [file] [log] [blame]
hashimoto663b9f42014-08-26 04:29:201// Copyright 2014 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
Ryo Hashimoto884ad192014-08-28 05:54:305#ifndef CHROME_BROWSER_AUTOCOMPLETE_CHROME_AUTOCOMPLETE_PROVIDER_CLIENT_H_
6#define CHROME_BROWSER_AUTOCOMPLETE_CHROME_AUTOCOMPLETE_PROVIDER_CLIENT_H_
hashimoto663b9f42014-08-26 04:29:207
8#include "chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.h"
blundell0c5bb2532015-06-16 14:23:149#include "chrome/browser/search_engines/ui_thread_search_terms_data.h"
Ryo Hashimoto884ad192014-08-28 05:54:3010#include "components/omnibox/autocomplete_provider_client.h"
hashimoto663b9f42014-08-26 04:29:2011
12class Profile;
13
Ryo Hashimoto884ad192014-08-28 05:54:3014class ChromeAutocompleteProviderClient : public AutocompleteProviderClient {
hashimoto663b9f42014-08-26 04:29:2015 public:
Ryo Hashimoto884ad192014-08-28 05:54:3016 explicit ChromeAutocompleteProviderClient(Profile* profile);
Daniel Chenga542fca2014-10-21 09:51:2917 ~ChromeAutocompleteProviderClient() override;
hashimoto663b9f42014-08-26 04:29:2018
Ryo Hashimoto884ad192014-08-28 05:54:3019 // AutocompleteProviderClient:
paulmeyerb5824262015-06-17 18:08:4420 net::URLRequestContextGetter* GetRequestContext() override;
21 const AutocompleteSchemeClassifier& GetSchemeClassifier() override;
22 history::HistoryService* GetHistoryService() override;
23 bookmarks::BookmarkModel* GetBookmarkModel() override;
24 history::URLDatabase* GetInMemoryDatabase() override;
blundell0c5bb2532015-06-16 14:23:1425 TemplateURLService* GetTemplateURLService() override;
26 const SearchTermsData& GetSearchTermsData() override;
blundellfb1215ee2015-06-19 20:18:1227 scoped_refptr<ShortcutsBackend> GetShortcutsBackend() override;
28 scoped_refptr<ShortcutsBackend> GetShortcutsBackendIfExists() override;
paulmeyerb5824262015-06-17 18:08:4429 std::string GetAcceptLanguages() override;
blundell27855972015-06-16 12:37:5430 bool IsOffTheRecord() override;
31 bool SearchSuggestEnabled() override;
32 bool ShowBookmarkBar() override;
33 bool TabSyncEnabledAndUnencrypted() override;
Daniel Chenga542fca2014-10-21 09:51:2934 void Classify(
hashimoto663b9f42014-08-26 04:29:2035 const base::string16& text,
36 bool prefer_keyword,
37 bool allow_exact_keyword_match,
38 metrics::OmniboxEventProto::PageClassification page_classification,
39 AutocompleteMatch* match,
mostynb01d8b10e2014-10-13 09:44:4440 GURL* alternate_nav_url) override;
Daniel Chenga542fca2014-10-21 09:51:2941 void DeleteMatchingURLsForKeywordFromHistory(
hashimoto663b9f42014-08-26 04:29:2042 history::KeywordID keyword_id,
mostynb01d8b10e2014-10-13 09:44:4443 const base::string16& term) override;
Daniel Chenga542fca2014-10-21 09:51:2944 void PrefetchImage(const GURL& url) override;
blundell62bf65f2015-06-19 08:30:4645 void OnAutocompleteControllerResultReady(
46 AutocompleteController* controller) override;
hashimoto663b9f42014-08-26 04:29:2047
48 private:
49 Profile* profile_;
50 ChromeAutocompleteSchemeClassifier scheme_classifier_;
blundell0c5bb2532015-06-16 14:23:1451 UIThreadSearchTermsData search_terms_data_;
hashimoto663b9f42014-08-26 04:29:2052
Ryo Hashimoto884ad192014-08-28 05:54:3053 DISALLOW_COPY_AND_ASSIGN(ChromeAutocompleteProviderClient);
hashimoto663b9f42014-08-26 04:29:2054};
55
Ryo Hashimoto884ad192014-08-28 05:54:3056#endif // CHROME_BROWSER_AUTOCOMPLETE_CHROME_AUTOCOMPLETE_PROVIDER_CLIENT_H_