OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 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 #ifndef CHROME_BROWSER_UI_APP_LIST_APP_LIST_VIEW_DELEGATE_H_ | 5 #ifndef CHROME_BROWSER_UI_APP_LIST_APP_LIST_VIEW_DELEGATE_H_ |
6 #define CHROME_BROWSER_UI_APP_LIST_APP_LIST_VIEW_DELEGATE_H_ | 6 #define CHROME_BROWSER_UI_APP_LIST_APP_LIST_VIEW_DELEGATE_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
11 #include <string> | 11 #include <string> |
12 | 12 |
13 #include "base/callback_forward.h" | 13 #include "base/callback_forward.h" |
14 #include "base/compiler_specific.h" | 14 #include "base/compiler_specific.h" |
15 #include "base/macros.h" | 15 #include "base/macros.h" |
16 #include "base/memory/ref_counted.h" | 16 #include "base/memory/ref_counted.h" |
17 #include "base/memory/scoped_vector.h" | 17 #include "base/memory/scoped_vector.h" |
18 #include "base/observer_list.h" | |
19 #include "base/scoped_observer.h" | 18 #include "base/scoped_observer.h" |
20 #include "chrome/browser/profiles/profile_attributes_storage.h" | 19 #include "chrome/browser/profiles/profile_attributes_storage.h" |
21 #include "chrome/browser/search/hotword_client.h" | 20 #include "chrome/browser/search/hotword_client.h" |
22 #include "chrome/browser/signin/signin_manager_factory.h" | 21 #include "chrome/browser/signin/signin_manager_factory.h" |
23 #include "chrome/browser/ui/app_list/start_page_observer.h" | 22 #include "chrome/browser/ui/app_list/start_page_observer.h" |
24 #include "components/search_engines/template_url_service.h" | 23 #include "components/search_engines/template_url_service.h" |
25 #include "components/search_engines/template_url_service_observer.h" | 24 #include "components/search_engines/template_url_service_observer.h" |
26 #include "components/signin/core/browser/signin_manager_base.h" | 25 #include "components/signin/core/browser/signin_manager_base.h" |
27 #include "content/public/browser/notification_observer.h" | 26 #include "content/public/browser/notification_observer.h" |
28 #include "content/public/browser/notification_registrar.h" | 27 #include "content/public/browser/notification_registrar.h" |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
105 void ShowForProfileByPath(const base::FilePath& profile_path) override; | 104 void ShowForProfileByPath(const base::FilePath& profile_path) override; |
106 #if defined(TOOLKIT_VIEWS) | 105 #if defined(TOOLKIT_VIEWS) |
107 views::View* CreateStartPageWebView(const gfx::Size& size) override; | 106 views::View* CreateStartPageWebView(const gfx::Size& size) override; |
108 std::vector<views::View*> CreateCustomPageWebViews( | 107 std::vector<views::View*> CreateCustomPageWebViews( |
109 const gfx::Size& size) override; | 108 const gfx::Size& size) override; |
110 void CustomLauncherPageAnimationChanged(double progress) override; | 109 void CustomLauncherPageAnimationChanged(double progress) override; |
111 void CustomLauncherPagePopSubpage() override; | 110 void CustomLauncherPagePopSubpage() override; |
112 #endif | 111 #endif |
113 bool IsSpeechRecognitionEnabled() override; | 112 bool IsSpeechRecognitionEnabled() override; |
114 const Users& GetUsers() const override; | 113 const Users& GetUsers() const override; |
115 void AddObserver(app_list::AppListViewDelegateObserver* observer) override; | |
116 void RemoveObserver(app_list::AppListViewDelegateObserver* observer) override; | |
117 | 114 |
118 // Overridden from TemplateURLServiceObserver: | 115 // Overridden from TemplateURLServiceObserver: |
119 void OnTemplateURLServiceChanged() override; | 116 void OnTemplateURLServiceChanged() override; |
120 | 117 |
121 private: | 118 private: |
122 // Updates the speech webview and start page for the current |profile_|. | 119 // Updates the speech webview and start page for the current |profile_|. |
123 void SetUpSearchUI(); | 120 void SetUpSearchUI(); |
124 | 121 |
125 // Updates the app list's ProfileMenuItems for the current |profile_|. | 122 // Updates the app list's ProfileMenuItems for the current |profile_|. |
126 void SetUpProfileSwitcher(); | 123 void SetUpProfileSwitcher(); |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
185 base::TimeDelta auto_launch_timeout_; | 182 base::TimeDelta auto_launch_timeout_; |
186 // Determines whether the current search was initiated by speech. | 183 // Determines whether the current search was initiated by speech. |
187 bool is_voice_query_; | 184 bool is_voice_query_; |
188 | 185 |
189 Users users_; | 186 Users users_; |
190 | 187 |
191 #if defined(USE_ASH) | 188 #if defined(USE_ASH) |
192 std::unique_ptr<AppSyncUIStateWatcher> app_sync_ui_state_watcher_; | 189 std::unique_ptr<AppSyncUIStateWatcher> app_sync_ui_state_watcher_; |
193 #endif | 190 #endif |
194 | 191 |
195 base::ObserverList<app_list::AppListViewDelegateObserver> observers_; | |
196 | |
197 ScopedObserver<TemplateURLService, AppListViewDelegate> | 192 ScopedObserver<TemplateURLService, AppListViewDelegate> |
198 template_url_service_observer_; | 193 template_url_service_observer_; |
199 | 194 |
200 // Used to track the SigninManagers that this instance is observing so that | 195 // Used to track the SigninManagers that this instance is observing so that |
201 // this instance can be removed as an observer on its destruction. | 196 // this instance can be removed as an observer on its destruction. |
202 ScopedObserver<SigninManagerBase, AppListViewDelegate> scoped_observer_; | 197 ScopedObserver<SigninManagerBase, AppListViewDelegate> scoped_observer_; |
203 | 198 |
204 // Window contents of additional custom launcher pages. | 199 // Window contents of additional custom launcher pages. |
205 ScopedVector<apps::CustomLauncherPageContents> custom_page_contents_; | 200 ScopedVector<apps::CustomLauncherPageContents> custom_page_contents_; |
206 | 201 |
207 // Registers for NOTIFICATION_APP_TERMINATING to unload custom launcher pages. | 202 // Registers for NOTIFICATION_APP_TERMINATING to unload custom launcher pages. |
208 content::NotificationRegistrar registrar_; | 203 content::NotificationRegistrar registrar_; |
209 | 204 |
210 DISALLOW_COPY_AND_ASSIGN(AppListViewDelegate); | 205 DISALLOW_COPY_AND_ASSIGN(AppListViewDelegate); |
211 }; | 206 }; |
212 | 207 |
213 #endif // CHROME_BROWSER_UI_APP_LIST_APP_LIST_VIEW_DELEGATE_H_ | 208 #endif // CHROME_BROWSER_UI_APP_LIST_APP_LIST_VIEW_DELEGATE_H_ |
OLD | NEW |