| 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_VIEW_H_ | 5 #ifndef UI_MESSAGE_CENTER_VIEWS_MESSAGE_VIEW_H_ |
| 6 #define UI_MESSAGE_CENTER_VIEWS_MESSAGE_VIEW_H_ | 6 #define UI_MESSAGE_CENTER_VIEWS_MESSAGE_VIEW_H_ |
| 7 | 7 |
| 8 #include "base/macros.h" | 8 #include "base/macros.h" |
| 9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
| 10 #include "base/strings/string16.h" | 10 #include "base/strings/string16.h" |
| (...skipping 28 matching lines...) Expand all Loading... |
| 39 virtual void RemoveNotification(const std::string& notification_id, | 39 virtual void RemoveNotification(const std::string& notification_id, |
| 40 bool by_user) = 0; | 40 bool by_user) = 0; |
| 41 }; | 41 }; |
| 42 | 42 |
| 43 // Individual notifications constants. | 43 // Individual notifications constants. |
| 44 const int kPaddingBetweenItems = 10; | 44 const int kPaddingBetweenItems = 10; |
| 45 const int kPaddingHorizontal = 18; | 45 const int kPaddingHorizontal = 18; |
| 46 const int kWebNotificationButtonWidth = 32; | 46 const int kWebNotificationButtonWidth = 32; |
| 47 const int kWebNotificationIconSize = 40; | 47 const int kWebNotificationIconSize = 40; |
| 48 | 48 |
| 49 // An base class for a notification entry. Contains background, close button | 49 // An base class for a notification entry. Contains background and other |
| 50 // and other elements shared by derived notification views. | 50 // elements shared by derived notification views. |
| 51 class MESSAGE_CENTER_EXPORT MessageView : public views::SlideOutView, | 51 class MESSAGE_CENTER_EXPORT MessageView : public views::SlideOutView, |
| 52 public views::ButtonListener { | 52 public views::ButtonListener { |
| 53 public: | 53 public: |
| 54 MessageView(MessageViewController* controller, | 54 MessageView(MessageViewController* controller, |
| 55 const std::string& notification_id, | 55 const std::string& notification_id, |
| 56 const NotifierId& notifier_id, | 56 const NotifierId& notifier_id, |
| 57 const gfx::ImageSkia& small_image, | 57 const gfx::ImageSkia& small_image, |
| 58 const base::string16& display_source); | 58 const base::string16& display_source); |
| 59 ~MessageView() override; | 59 ~MessageView() override; |
| 60 | 60 |
| 61 // Updates this view with the new data contained in the notification. | 61 // Updates this view with the new data contained in the notification. |
| 62 virtual void UpdateWithNotification(const Notification& notification); | 62 virtual void UpdateWithNotification(const Notification& notification); |
| 63 | 63 |
| 64 // Returns the insets for the shadow it will have for rich notification. | 64 // Returns the insets for the shadow it will have for rich notification. |
| 65 static gfx::Insets GetShadowInsets(); | 65 static gfx::Insets GetShadowInsets(); |
| 66 | 66 |
| 67 // Creates a shadow around the notification. | 67 // Creates a shadow around the notification. |
| 68 void CreateShadowBorder(); | 68 void CreateShadowBorder(); |
| 69 | 69 |
| 70 bool IsCloseButtonFocused(); | 70 virtual bool IsCloseButtonFocused(); |
| 71 void RequestFocusOnCloseButton(); | 71 virtual void RequestFocusOnCloseButton(); |
| 72 virtual bool IsPinned(); |
| 72 | 73 |
| 73 void set_accessible_name(const base::string16& accessible_name) { | 74 void set_accessible_name(const base::string16& accessible_name) { |
| 74 accessible_name_ = accessible_name; | 75 accessible_name_ = accessible_name; |
| 75 } | 76 } |
| 76 | 77 |
| 77 // Overridden from views::View: | 78 // Overridden from views::View: |
| 78 void GetAccessibleState(ui::AXViewState* state) override; | 79 void GetAccessibleState(ui::AXViewState* state) override; |
| 79 bool OnMousePressed(const ui::MouseEvent& event) override; | 80 bool OnMousePressed(const ui::MouseEvent& event) override; |
| 80 bool OnKeyPressed(const ui::KeyEvent& event) override; | 81 bool OnKeyPressed(const ui::KeyEvent& event) override; |
| 81 bool OnKeyReleased(const ui::KeyEvent& event) override; | 82 bool OnKeyReleased(const ui::KeyEvent& event) override; |
| (...skipping 11 matching lines...) Expand all Loading... |
| 93 void set_scroller(views::ScrollView* scroller) { scroller_ = scroller; } | 94 void set_scroller(views::ScrollView* scroller) { scroller_ = scroller; } |
| 94 std::string notification_id() { return notification_id_; } | 95 std::string notification_id() { return notification_id_; } |
| 95 NotifierId notifier_id() { return notifier_id_; } | 96 NotifierId notifier_id() { return notifier_id_; } |
| 96 const base::string16& display_source() const { return display_source_; } | 97 const base::string16& display_source() const { return display_source_; } |
| 97 | 98 |
| 98 protected: | 99 protected: |
| 99 // Overridden from views::SlideOutView: | 100 // Overridden from views::SlideOutView: |
| 100 void OnSlideOut() override; | 101 void OnSlideOut() override; |
| 101 | 102 |
| 102 views::ImageView* small_image() { return small_image_view_.get(); } | 103 views::ImageView* small_image() { return small_image_view_.get(); } |
| 103 views::ImageButton* close_button() { return close_button_.get(); } | |
| 104 views::ScrollView* scroller() { return scroller_; } | 104 views::ScrollView* scroller() { return scroller_; } |
| 105 | 105 |
| 106 private: | 106 private: |
| 107 MessageViewController* controller_; | 107 MessageViewController* controller_; |
| 108 std::string notification_id_; | 108 std::string notification_id_; |
| 109 NotifierId notifier_id_; | 109 NotifierId notifier_id_; |
| 110 views::View* background_view_; // Owned by views hierarchy. | 110 views::View* background_view_; // Owned by views hierarchy. |
| 111 scoped_ptr<views::ImageButton> close_button_; | |
| 112 scoped_ptr<views::ImageView> small_image_view_; | 111 scoped_ptr<views::ImageView> small_image_view_; |
| 113 views::ScrollView* scroller_; | 112 views::ScrollView* scroller_; |
| 114 | 113 |
| 115 base::string16 accessible_name_; | 114 base::string16 accessible_name_; |
| 116 | 115 |
| 117 base::string16 display_source_; | 116 base::string16 display_source_; |
| 118 | 117 |
| 119 scoped_ptr<views::Painter> focus_painter_; | 118 scoped_ptr<views::Painter> focus_painter_; |
| 120 | 119 |
| 121 // Changes the background color being used by |background_view_| and schedules | 120 // Changes the background color being used by |background_view_| and schedules |
| 122 // a paint. | 121 // a paint. |
| 123 void SetDrawBackgroundAsActive(bool active); | 122 void SetDrawBackgroundAsActive(bool active); |
| 124 | 123 |
| 125 DISALLOW_COPY_AND_ASSIGN(MessageView); | 124 DISALLOW_COPY_AND_ASSIGN(MessageView); |
| 126 }; | 125 }; |
| 127 | 126 |
| 128 } // namespace message_center | 127 } // namespace message_center |
| 129 | 128 |
| 130 #endif // UI_MESSAGE_CENTER_VIEWS_MESSAGE_VIEW_H_ | 129 #endif // UI_MESSAGE_CENTER_VIEWS_MESSAGE_VIEW_H_ |
| OLD | NEW |