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 "chrome/browser/ui/app_list/search/search_controller_factory.h" | 5 #include "chrome/browser/ui/app_list/search/search_controller_factory.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/memory/ptr_util.h" | 10 #include "base/memory/ptr_util.h" |
11 #include "base/metrics/field_trial.h" | 11 #include "base/metrics/field_trial.h" |
12 #include "base/strings/string_util.h" | 12 #include "base/strings/string_util.h" |
13 #include "base/time/default_clock.h" | 13 #include "base/time/default_clock.h" |
14 #include "build/build_config.h" | 14 #include "build/build_config.h" |
15 #include "chrome/browser/profiles/profile.h" | 15 #include "chrome/browser/profiles/profile.h" |
| 16 #include "chrome/browser/ui/app_list/search/answer_card_search_provider.h" |
16 #include "chrome/browser/ui/app_list/search/app_search_provider.h" | 17 #include "chrome/browser/ui/app_list/search/app_search_provider.h" |
17 #include "chrome/browser/ui/app_list/search/history_factory.h" | 18 #include "chrome/browser/ui/app_list/search/history_factory.h" |
18 #include "chrome/browser/ui/app_list/search/launcher_search/launcher_search_prov
ider.h" | 19 #include "chrome/browser/ui/app_list/search/launcher_search/launcher_search_prov
ider.h" |
19 #include "chrome/browser/ui/app_list/search/omnibox_provider.h" | 20 #include "chrome/browser/ui/app_list/search/omnibox_provider.h" |
20 #include "chrome/browser/ui/app_list/search/suggestions/suggestions_search_provi
der.h" | 21 #include "chrome/browser/ui/app_list/search/suggestions/suggestions_search_provi
der.h" |
21 #include "chrome/browser/ui/app_list/search/webstore/webstore_provider.h" | 22 #include "chrome/browser/ui/app_list/search/webstore/webstore_provider.h" |
22 #include "chrome/browser/ui/app_list/search_answer_web_contents_delegate.h" | |
23 #include "chrome/common/chrome_switches.h" | 23 #include "chrome/common/chrome_switches.h" |
24 #include "ui/app_list/app_list_features.h" | 24 #include "ui/app_list/app_list_features.h" |
25 #include "ui/app_list/app_list_model.h" | 25 #include "ui/app_list/app_list_model.h" |
26 #include "ui/app_list/app_list_switches.h" | 26 #include "ui/app_list/app_list_switches.h" |
27 #include "ui/app_list/search/mixer.h" | 27 #include "ui/app_list/search/mixer.h" |
28 #include "ui/app_list/search_controller.h" | 28 #include "ui/app_list/search_controller.h" |
29 | 29 |
30 namespace app_list { | 30 namespace app_list { |
31 | 31 |
32 namespace { | 32 namespace { |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
82 model->top_level_item_list())); | 82 model->top_level_item_list())); |
83 controller->AddProvider( | 83 controller->AddProvider( |
84 omnibox_group_id, | 84 omnibox_group_id, |
85 base::MakeUnique<OmniboxProvider>(profile, list_controller)); | 85 base::MakeUnique<OmniboxProvider>(profile, list_controller)); |
86 controller->AddProvider( | 86 controller->AddProvider( |
87 webstore_group_id, | 87 webstore_group_id, |
88 base::MakeUnique<WebstoreProvider>(profile, list_controller)); | 88 base::MakeUnique<WebstoreProvider>(profile, list_controller)); |
89 if (features::IsAnswerCardEnabled()) { | 89 if (features::IsAnswerCardEnabled()) { |
90 controller->AddProvider( | 90 controller->AddProvider( |
91 answer_card_group_id, | 91 answer_card_group_id, |
92 base::MakeUnique<SearchAnswerWebContentsDelegate>(profile, model)); | 92 base::MakeUnique<AnswerCardSearchProvider>(profile, model)); |
93 } | 93 } |
94 if (IsSuggestionsSearchProviderEnabled()) { | 94 if (IsSuggestionsSearchProviderEnabled()) { |
95 size_t suggestions_group_id = | 95 size_t suggestions_group_id = |
96 controller->AddGroup(kMaxSuggestionsResults, 1.0); | 96 controller->AddGroup(kMaxSuggestionsResults, 1.0); |
97 controller->AddProvider( | 97 controller->AddProvider( |
98 suggestions_group_id, | 98 suggestions_group_id, |
99 base::MakeUnique<SuggestionsSearchProvider>(profile, list_controller)); | 99 base::MakeUnique<SuggestionsSearchProvider>(profile, list_controller)); |
100 } | 100 } |
101 | 101 |
102 // LauncherSearchProvider is added only when flag is enabled, not in guest | 102 // LauncherSearchProvider is added only when flag is enabled, not in guest |
103 // session and running on Chrome OS. | 103 // session and running on Chrome OS. |
104 if (app_list::switches::IsDriveSearchInChromeLauncherEnabled() && | 104 if (app_list::switches::IsDriveSearchInChromeLauncherEnabled() && |
105 !profile->IsGuestSession()) { | 105 !profile->IsGuestSession()) { |
106 size_t search_api_group_id = | 106 size_t search_api_group_id = |
107 controller->AddGroup(kMaxLauncherSearchResults, 1.0); | 107 controller->AddGroup(kMaxLauncherSearchResults, 1.0); |
108 controller->AddProvider(search_api_group_id, | 108 controller->AddProvider(search_api_group_id, |
109 base::MakeUnique<LauncherSearchProvider>(profile)); | 109 base::MakeUnique<LauncherSearchProvider>(profile)); |
110 } | 110 } |
111 | 111 |
112 return controller; | 112 return controller; |
113 } | 113 } |
114 | 114 |
115 } // namespace app_list | 115 } // namespace app_list |
OLD | NEW |