| Index: ash/system/status_area_widget.h
|
| diff --git a/ash/system/status_area_widget.h b/ash/system/status_area_widget.h
|
| index 1a99a0f328978735734a87139bf65aa4d3a7e776..ad72db657cd26342808f2181ce2adcfc394be252 100644
|
| --- a/ash/system/status_area_widget.h
|
| +++ b/ash/system/status_area_widget.h
|
| @@ -11,20 +11,56 @@
|
| #include "ui/views/widget/widget.h"
|
|
|
| namespace ash {
|
| +
|
| +class ShellDelegate;
|
| +class SystemTray;
|
| +class SystemTrayDelegate;
|
| +class WebNotificationTray;
|
| +
|
| namespace internal {
|
|
|
| class StatusAreaWidgetDelegate;
|
|
|
| class ASH_EXPORT StatusAreaWidget : public views::Widget {
|
| - public:
|
| +public:
|
| + enum UserAction {
|
| + NON_USER_ACTION,
|
| + USER_ACTION
|
| + };
|
| +
|
| StatusAreaWidget();
|
| virtual ~StatusAreaWidget();
|
|
|
| - void AddTray(views::View* tray);
|
| + // Creates a SystemTray and a WebNotificationTray.
|
| + void CreateTrayViews(ShellDelegate* shell_delegate);
|
| +
|
| + // Destroys the system tray and web notification tray. Called before
|
| + // tearing down the windows to avoid shutdown problems.
|
| + void Shutdown();
|
| +
|
| + void AddSystemTray(SystemTray* system_tray, ShellDelegate* shell_delegate);
|
| + void AddWebNotificationTray(WebNotificationTray* web_notification_tray);
|
| void SetShelfAlignment(ShelfAlignment alignment);
|
|
|
| + // Always used to show/hide the web notification tray. These handle any logic
|
| + // with hiding/supressing notifications from the system tray.
|
| + void ShowWebNotificationBubble(UserAction user_action);
|
| + void HideWebNotificationBubble();
|
| +
|
| + SystemTray* system_tray() { return system_tray_; }
|
| + SystemTrayDelegate* system_tray_delegate() {
|
| + return system_tray_delegate_.get();
|
| + }
|
| + WebNotificationTray* web_notification_tray() {
|
| + return web_notification_tray_;
|
| + }
|
| +
|
| private:
|
| internal::StatusAreaWidgetDelegate* widget_delegate_;
|
| + scoped_ptr<SystemTrayDelegate> system_tray_delegate_;
|
| + // Child views owned by the view hierarchy:
|
| + SystemTray* system_tray_;
|
| + WebNotificationTray* web_notification_tray_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(StatusAreaWidget);
|
| };
|
|
|