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 UI_MESSAGE_CENTER_VIEWS_MESSAGE_CENTER_BUBBLE_H_ | 5 #ifndef UI_MESSAGE_CENTER_VIEWS_MESSAGE_CENTER_BUBBLE_H_ |
6 #define UI_MESSAGE_CENTER_VIEWS_MESSAGE_CENTER_BUBBLE_H_ | 6 #define UI_MESSAGE_CENTER_VIEWS_MESSAGE_CENTER_BUBBLE_H_ |
7 | 7 |
8 #include "ui/message_center/message_center_export.h" | 8 #include "ui/message_center/message_center_export.h" |
9 #include "ui/message_center/notification_list.h" | 9 #include "ui/message_center/notification_change_observer.h" |
10 #include "ui/message_center/views/message_bubble_base.h" | 10 #include "ui/message_center/views/message_bubble_base.h" |
11 | 11 |
12 namespace message_center { | 12 namespace message_center { |
13 | 13 |
14 class MessageCenterContentsView; | 14 class MessageCenterView; |
15 | 15 |
16 // Bubble for message center. | 16 // Bubble for message center. |
17 class MESSAGE_CENTER_EXPORT MessageCenterBubble : public MessageBubbleBase { | 17 class MESSAGE_CENTER_EXPORT MessageCenterBubble |
| 18 : public MessageBubbleBase, |
| 19 public NotificationChangeObserver { |
18 public: | 20 public: |
19 explicit MessageCenterBubble(NotificationList::Delegate* delegate); | 21 explicit MessageCenterBubble(MessageCenter* message_center); |
20 | 22 |
21 virtual ~MessageCenterBubble(); | 23 virtual ~MessageCenterBubble(); |
22 | 24 |
23 // Overridden from MessageBubbleBase. | 25 // Overridden from MessageBubbleBase: |
24 virtual views::TrayBubbleView::InitParams GetInitParams( | 26 virtual views::TrayBubbleView::InitParams GetInitParams( |
25 views::TrayBubbleView::AnchorAlignment anchor_alignment) OVERRIDE; | 27 views::TrayBubbleView::AnchorAlignment anchor_alignment) OVERRIDE; |
26 virtual void InitializeContents(views::TrayBubbleView* bubble_view) OVERRIDE; | 28 virtual void InitializeContents(views::TrayBubbleView* bubble_view) OVERRIDE; |
27 virtual void OnBubbleViewDestroyed() OVERRIDE; | 29 virtual void OnBubbleViewDestroyed() OVERRIDE; |
28 virtual void UpdateBubbleView() OVERRIDE; | 30 virtual void UpdateBubbleView() OVERRIDE; |
29 virtual void OnMouseEnteredView() OVERRIDE; | 31 virtual void OnMouseEnteredView() OVERRIDE; |
30 virtual void OnMouseExitedView() OVERRIDE; | 32 virtual void OnMouseExitedView() OVERRIDE; |
31 | 33 |
| 34 // Overridden from NotificationChangeObserver: |
| 35 virtual void OnRemoveNotification(const std::string& id, bool by_user) |
| 36 OVERRIDE; |
| 37 virtual void OnRemoveAllNotifications(bool by_user) OVERRIDE; |
| 38 virtual void OnDisableNotificationsByExtension(const std::string& id) |
| 39 OVERRIDE; |
| 40 virtual void OnDisableNotificationsByUrl(const std::string& id) OVERRIDE; |
| 41 virtual void OnShowNotificationSettings(const std::string& id) OVERRIDE; |
| 42 virtual void OnShowNotificationSettingsDialog(gfx::NativeView context) |
| 43 OVERRIDE; |
| 44 virtual void OnExpanded(const std::string& id) OVERRIDE; |
| 45 virtual void OnClicked(const std::string& id) OVERRIDE; |
| 46 virtual void OnButtonClicked(const std::string& id, |
| 47 int button_index) OVERRIDE; |
| 48 |
32 size_t NumMessageViewsForTest() const; | 49 size_t NumMessageViewsForTest() const; |
33 | 50 |
34 private: | 51 private: |
35 MessageCenterContentsView* contents_view_; | 52 MessageCenterView* contents_view_; |
36 | 53 |
37 // The maximum height | 54 // The maximum height |
38 int max_height_; | 55 int max_height_; |
39 | 56 |
40 DISALLOW_COPY_AND_ASSIGN(MessageCenterBubble); | 57 DISALLOW_COPY_AND_ASSIGN(MessageCenterBubble); |
41 }; | 58 }; |
42 | 59 |
43 } // namespace message_center | 60 } // namespace message_center |
44 | 61 |
45 #endif // UI_MESSAGE_CENTER_VIEWS_MESSAGE_CENTER_BUBBLE_H_ | 62 #endif // UI_MESSAGE_CENTER_VIEWS_MESSAGE_CENTER_BUBBLE_H_ |
OLD | NEW |