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_SYSTEM_STATUS_AREA_WIDGET_H_ | 5 #ifndef ASH_SYSTEM_STATUS_AREA_WIDGET_H_ |
6 #define ASH_SYSTEM_STATUS_AREA_WIDGET_H_ | 6 #define ASH_SYSTEM_STATUS_AREA_WIDGET_H_ |
7 | 7 |
8 #include "ash/ash_export.h" | 8 #include "ash/ash_export.h" |
9 #include "ash/shelf/shelf_types.h" | 9 #include "ash/shelf/shelf_types.h" |
10 #include "ash/system/user/login_status.h" | 10 #include "ash/system/user/login_status.h" |
11 #include "ui/views/widget/widget.h" | 11 #include "ui/views/widget/widget.h" |
12 | 12 |
13 namespace ash { | 13 namespace ash { |
14 | 14 |
15 class ShellDelegate; | 15 class ShellDelegate; |
16 class SystemTray; | 16 class SystemTray; |
17 class WebNotificationTray; | 17 class WebNotificationTray; |
18 | 18 |
19 namespace internal { | 19 namespace internal { |
20 | 20 |
21 class LogoutButtonTray; | 21 class LogoutButtonTray; |
22 class StatusAreaWidgetDelegate; | 22 class StatusAreaWidgetDelegate; |
| 23 #if defined(OS_CHROMEOS) |
| 24 class VirtualKeyboardTray; |
| 25 #endif |
23 | 26 |
24 class ASH_EXPORT StatusAreaWidget : public views::Widget { | 27 class ASH_EXPORT StatusAreaWidget : public views::Widget { |
25 public: | 28 public: |
26 static const char kNativeViewName[]; | 29 static const char kNativeViewName[]; |
27 | 30 |
28 explicit StatusAreaWidget(aura::Window* status_container); | 31 explicit StatusAreaWidget(aura::Window* status_container); |
29 virtual ~StatusAreaWidget(); | 32 virtual ~StatusAreaWidget(); |
30 | 33 |
31 // Creates the SystemTray, WebNotificationTray and LogoutButtonTray. | 34 // Creates the SystemTray, WebNotificationTray and LogoutButtonTray. |
32 void CreateTrayViews(); | 35 void CreateTrayViews(); |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
64 // True if any message bubble is shown. | 67 // True if any message bubble is shown. |
65 bool IsMessageBubbleShown() const; | 68 bool IsMessageBubbleShown() const; |
66 | 69 |
67 // Overridden from views::Widget: | 70 // Overridden from views::Widget: |
68 virtual void OnNativeWidgetActivationChanged(bool active) OVERRIDE; | 71 virtual void OnNativeWidgetActivationChanged(bool active) OVERRIDE; |
69 | 72 |
70 private: | 73 private: |
71 void AddSystemTray(); | 74 void AddSystemTray(); |
72 void AddWebNotificationTray(); | 75 void AddWebNotificationTray(); |
73 void AddLogoutButtonTray(); | 76 void AddLogoutButtonTray(); |
| 77 #if defined(OS_CHROMEOS) |
| 78 void AddVirtualKeyboardTray(); |
| 79 #endif |
74 | 80 |
75 // Weak pointers to View classes that are parented to StatusAreaWidget: | 81 // Weak pointers to View classes that are parented to StatusAreaWidget: |
76 internal::StatusAreaWidgetDelegate* status_area_widget_delegate_; | 82 internal::StatusAreaWidgetDelegate* status_area_widget_delegate_; |
77 SystemTray* system_tray_; | 83 SystemTray* system_tray_; |
78 WebNotificationTray* web_notification_tray_; | 84 WebNotificationTray* web_notification_tray_; |
79 LogoutButtonTray* logout_button_tray_; | 85 LogoutButtonTray* logout_button_tray_; |
| 86 #if defined(OS_CHROMEOS) |
| 87 VirtualKeyboardTray* virtual_keyboard_tray_; |
| 88 #endif |
80 user::LoginStatus login_status_; | 89 user::LoginStatus login_status_; |
81 | 90 |
82 DISALLOW_COPY_AND_ASSIGN(StatusAreaWidget); | 91 DISALLOW_COPY_AND_ASSIGN(StatusAreaWidget); |
83 }; | 92 }; |
84 | 93 |
85 } // namespace internal | 94 } // namespace internal |
86 } // namespace ash | 95 } // namespace ash |
87 | 96 |
88 #endif // ASH_SYSTEM_STATUS_AREA_WIDGET_H_ | 97 #endif // ASH_SYSTEM_STATUS_AREA_WIDGET_H_ |
OLD | NEW |