| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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_ARC_NOTIFICATION_ARC_NOTIFICATION_ITEM_H_ | 5 #ifndef UI_ARC_NOTIFICATION_ARC_NOTIFICATION_ITEM_H_ |
| 6 #define UI_ARC_NOTIFICATION_ARC_NOTIFICATION_ITEM_H_ | 6 #define UI_ARC_NOTIFICATION_ARC_NOTIFICATION_ITEM_H_ |
| 7 | 7 |
| 8 #include <memory> | 8 #include <memory> |
| 9 #include <string> | 9 #include <string> |
| 10 | 10 |
| (...skipping 11 matching lines...) Expand all Loading... |
| 22 // corresponds to one ARC notification. | 22 // corresponds to one ARC notification. |
| 23 class ArcNotificationItem { | 23 class ArcNotificationItem { |
| 24 public: | 24 public: |
| 25 ArcNotificationItem(ArcNotificationManager* manager, | 25 ArcNotificationItem(ArcNotificationManager* manager, |
| 26 message_center::MessageCenter* message_center, | 26 message_center::MessageCenter* message_center, |
| 27 const std::string& notification_key, | 27 const std::string& notification_key, |
| 28 const AccountId& profile_id); | 28 const AccountId& profile_id); |
| 29 virtual ~ArcNotificationItem(); | 29 virtual ~ArcNotificationItem(); |
| 30 | 30 |
| 31 virtual void UpdateWithArcNotificationData( | 31 virtual void UpdateWithArcNotificationData( |
| 32 const mojom::ArcNotificationData& data); | 32 mojom::ArcNotificationDataPtr data); |
| 33 | 33 |
| 34 // Methods called from ArcNotificationManager: | 34 // Methods called from ArcNotificationManager: |
| 35 void OnClosedFromAndroid(bool by_user); | 35 void OnClosedFromAndroid(bool by_user); |
| 36 | 36 |
| 37 // Methods called from ArcNotificationItemDelegate: | 37 // Methods called from ArcNotificationItemDelegate: |
| 38 void Close(bool by_user); | 38 void Close(bool by_user); |
| 39 void Click(); | 39 void Click(); |
| 40 void ButtonClick(int button_index); | 40 void ButtonClick(int button_index); |
| 41 | 41 |
| 42 const std::string& notification_key() const { return notification_key_; } | 42 const std::string& notification_key() const { return notification_key_; } |
| 43 | 43 |
| 44 protected: | 44 protected: |
| 45 static int ConvertAndroidPriority(int android_priority); | 45 static int ConvertAndroidPriority(int android_priority); |
| 46 static gfx::Image ConvertAndroidSmallIcon( | |
| 47 const mojom::ArcBitmapPtr& arc_bitmap); | |
| 48 | 46 |
| 49 // Checks whether there is on-going |notification_|. If so, cache the |data| | 47 // Checks whether there is on-going |notification_|. |
| 50 // in |newer_data_| and returns true. Otherwise, returns false. | 48 bool HasPendingNotification(); |
| 51 bool CacheArcNotificationData(const mojom::ArcNotificationData& data); | 49 // Cache the |data| in |newer_data_|. |
| 50 void CacheArcNotificationData(mojom::ArcNotificationDataPtr data); |
| 52 | 51 |
| 53 // Sets the pending |notification_|. | 52 // Sets the pending |notification_|. |
| 54 void SetNotification( | 53 void SetNotification( |
| 55 std::unique_ptr<message_center::Notification> notification); | 54 std::unique_ptr<message_center::Notification> notification); |
| 56 | 55 |
| 57 // Add |notification_| to message center and update again if there is | 56 // Add |notification_| to message center and update again if there is |
| 58 // |newer_data_|. | 57 // |newer_data_|. |
| 59 void AddToMessageCenter(); | 58 void AddToMessageCenter(); |
| 60 | 59 |
| 61 bool CalledOnValidThread() const; | 60 bool CalledOnValidThread() const; |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 97 | 96 |
| 98 base::ThreadChecker thread_checker_; | 97 base::ThreadChecker thread_checker_; |
| 99 base::WeakPtrFactory<ArcNotificationItem> weak_ptr_factory_; | 98 base::WeakPtrFactory<ArcNotificationItem> weak_ptr_factory_; |
| 100 | 99 |
| 101 DISALLOW_COPY_AND_ASSIGN(ArcNotificationItem); | 100 DISALLOW_COPY_AND_ASSIGN(ArcNotificationItem); |
| 102 }; | 101 }; |
| 103 | 102 |
| 104 } // namespace arc | 103 } // namespace arc |
| 105 | 104 |
| 106 #endif // UI_ARC_NOTIFICATION_ARC_NOTIFICATION_ITEM_H_ | 105 #endif // UI_ARC_NOTIFICATION_ARC_NOTIFICATION_ITEM_H_ |
| OLD | NEW |