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 ASH_COMMON_SYSTEM_TRAY_SYSTEM_TRAY_H_ | 5 #ifndef ASH_COMMON_SYSTEM_TRAY_SYSTEM_TRAY_H_ |
6 #define ASH_COMMON_SYSTEM_TRAY_SYSTEM_TRAY_H_ | 6 #define ASH_COMMON_SYSTEM_TRAY_SYSTEM_TRAY_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <memory> | 9 #include <memory> |
10 #include <vector> | 10 #include <vector> |
(...skipping 11 matching lines...) Expand all Loading... |
22 class KeyEventWatcher; | 22 class KeyEventWatcher; |
23 enum class LoginStatus; | 23 enum class LoginStatus; |
24 class ScreenTrayItem; | 24 class ScreenTrayItem; |
25 class SystemBubbleWrapper; | 25 class SystemBubbleWrapper; |
26 class SystemTrayDelegate; | 26 class SystemTrayDelegate; |
27 class SystemTrayItem; | 27 class SystemTrayItem; |
28 class TrayAccessibility; | 28 class TrayAccessibility; |
29 class TrayAudio; | 29 class TrayAudio; |
30 class TrayCast; | 30 class TrayCast; |
31 class TrayDate; | 31 class TrayDate; |
32 class TrayNetwork; | |
33 class TraySystemInfo; | 32 class TraySystemInfo; |
34 class TrayTiles; | 33 class TrayTiles; |
35 class TrayUpdate; | 34 class TrayUpdate; |
36 class WebNotificationTray; | 35 class WebNotificationTray; |
37 | 36 |
38 // There are different methods for creating bubble views. | 37 // There are different methods for creating bubble views. |
39 enum BubbleCreationType { | 38 enum BubbleCreationType { |
40 BUBBLE_CREATE_NEW, // Closes any existing bubble and creates a new one. | 39 BUBBLE_CREATE_NEW, // Closes any existing bubble and creates a new one. |
41 BUBBLE_USE_EXISTING, // Uses any existing bubble, or creates a new one. | 40 BUBBLE_USE_EXISTING, // Uses any existing bubble, or creates a new one. |
42 }; | 41 }; |
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
158 | 157 |
159 TrayAccessibility* GetTrayAccessibilityForTest() { | 158 TrayAccessibility* GetTrayAccessibilityForTest() { |
160 return tray_accessibility_; | 159 return tray_accessibility_; |
161 } | 160 } |
162 | 161 |
163 // Get the tray item view (or NULL) for a given |tray_item| in a unit test. | 162 // Get the tray item view (or NULL) for a given |tray_item| in a unit test. |
164 views::View* GetTrayItemViewForTest(SystemTrayItem* tray_item); | 163 views::View* GetTrayItemViewForTest(SystemTrayItem* tray_item); |
165 | 164 |
166 TrayCast* GetTrayCastForTesting() const; | 165 TrayCast* GetTrayCastForTesting() const; |
167 TrayDate* GetTrayDateForTesting() const; | 166 TrayDate* GetTrayDateForTesting() const; |
168 TrayNetwork* GetTrayNetworkForTesting() const; | |
169 TraySystemInfo* GetTraySystemInfoForTesting() const; | 167 TraySystemInfo* GetTraySystemInfoForTesting() const; |
170 TrayTiles* GetTrayTilesForTesting() const; | 168 TrayTiles* GetTrayTilesForTesting() const; |
171 TrayUpdate* GetTrayUpdateForTesting() const; | 169 TrayUpdate* GetTrayUpdateForTesting() const; |
172 | 170 |
173 // Activates the system tray bubble. | 171 // Activates the system tray bubble. |
174 void ActivateBubble(); | 172 void ActivateBubble(); |
175 | 173 |
176 private: | 174 private: |
177 class ActivationObserver; | 175 class ActivationObserver; |
178 | 176 |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
262 // This is true when the displayed system tray menu is a full tray menu, | 260 // This is true when the displayed system tray menu is a full tray menu, |
263 // otherwise a single line item menu like the volume slider is shown. | 261 // otherwise a single line item menu like the volume slider is shown. |
264 // Note that the value is only valid when |system_bubble_| is true. | 262 // Note that the value is only valid when |system_bubble_| is true. |
265 bool full_system_tray_menu_; | 263 bool full_system_tray_menu_; |
266 | 264 |
267 // These objects are not owned by this class. | 265 // These objects are not owned by this class. |
268 TrayAccessibility* tray_accessibility_; | 266 TrayAccessibility* tray_accessibility_; |
269 TrayAudio* tray_audio_; // May be null. | 267 TrayAudio* tray_audio_; // May be null. |
270 TrayCast* tray_cast_; | 268 TrayCast* tray_cast_; |
271 TrayDate* tray_date_; // null for material design. | 269 TrayDate* tray_date_; // null for material design. |
272 TrayNetwork* tray_network_; | |
273 TrayTiles* tray_tiles_; // only used in material design. | 270 TrayTiles* tray_tiles_; // only used in material design. |
274 TraySystemInfo* tray_system_info_; // only used in material design. | 271 TraySystemInfo* tray_system_info_; // only used in material design. |
275 TrayUpdate* tray_update_; | 272 TrayUpdate* tray_update_; |
276 | 273 |
277 // A reference to the Screen share and capture item. | 274 // A reference to the Screen share and capture item. |
278 ScreenTrayItem* screen_capture_tray_item_; // not owned | 275 ScreenTrayItem* screen_capture_tray_item_; // not owned |
279 ScreenTrayItem* screen_share_tray_item_; // not owned | 276 ScreenTrayItem* screen_share_tray_item_; // not owned |
280 | 277 |
281 // TODO(oshima): Remove this when crbug.com/651242 is fixed. | 278 // TODO(oshima): Remove this when crbug.com/651242 is fixed. |
282 bool activating_ = false; | 279 bool activating_ = false; |
283 | 280 |
284 std::unique_ptr<KeyEventWatcher> key_event_watcher_; | 281 std::unique_ptr<KeyEventWatcher> key_event_watcher_; |
285 | 282 |
286 std::unique_ptr<ActivationObserver> activation_observer_; | 283 std::unique_ptr<ActivationObserver> activation_observer_; |
287 | 284 |
288 DISALLOW_COPY_AND_ASSIGN(SystemTray); | 285 DISALLOW_COPY_AND_ASSIGN(SystemTray); |
289 }; | 286 }; |
290 | 287 |
291 } // namespace ash | 288 } // namespace ash |
292 | 289 |
293 #endif // ASH_COMMON_SYSTEM_TRAY_SYSTEM_TRAY_H_ | 290 #endif // ASH_COMMON_SYSTEM_TRAY_SYSTEM_TRAY_H_ |
OLD | NEW |