OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_PLATFORM_BRIDGE_MAC_H_ | 5 #ifndef CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_PLATFORM_BRIDGE_MAC_H_ |
6 #define CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_PLATFORM_BRIDGE_MAC_H_ | 6 #define CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_PLATFORM_BRIDGE_MAC_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 #include <string> | 9 #include <string> |
10 | 10 |
(...skipping 21 matching lines...) Expand all Loading... |
32 | 32 |
33 // NotificationPlatformBridge implementation. | 33 // NotificationPlatformBridge implementation. |
34 void Display(NotificationCommon::Type notification_type, | 34 void Display(NotificationCommon::Type notification_type, |
35 const std::string& notification_id, | 35 const std::string& notification_id, |
36 const std::string& profile_id, | 36 const std::string& profile_id, |
37 bool incognito, | 37 bool incognito, |
38 const Notification& notification) override; | 38 const Notification& notification) override; |
39 | 39 |
40 void Close(const std::string& profile_id, | 40 void Close(const std::string& profile_id, |
41 const std::string& notification_id) override; | 41 const std::string& notification_id) override; |
42 bool GetDisplayed(const std::string& profile_id, | 42 void GetDisplayed( |
43 bool incognito, | 43 const std::string& profile_id, |
44 std::set<std::string>* notifications) const override; | 44 bool incognito, |
| 45 const DisplayedNotificationsCallback& callback) const override; |
45 | 46 |
46 // Processes a notification response generated from a user action | 47 // Processes a notification response generated from a user action |
47 // (click close, etc.). | 48 // (click close, etc.). |
48 static void ProcessNotificationResponse(NSDictionary* response); | 49 static void ProcessNotificationResponse(NSDictionary* response); |
49 | 50 |
50 // Validates contents of the |response| dictionary as received from the system | 51 // Validates contents of the |response| dictionary as received from the system |
51 // when a notification gets activated. | 52 // when a notification gets activated. |
52 static bool VerifyNotificationData(NSDictionary* response) WARN_UNUSED_RESULT; | 53 static bool VerifyNotificationData(NSDictionary* response) WARN_UNUSED_RESULT; |
53 | 54 |
54 private: | 55 private: |
55 // Cocoa class that receives callbacks from the NSUserNotificationCenter. | 56 // Cocoa class that receives callbacks from the NSUserNotificationCenter. |
56 base::scoped_nsobject<NotificationCenterDelegate> delegate_; | 57 base::scoped_nsobject<NotificationCenterDelegate> delegate_; |
57 | 58 |
58 // The notification center to use for local banner notifications, | 59 // The notification center to use for local banner notifications, |
59 // this can be overriden in tests. | 60 // this can be overriden in tests. |
60 base::scoped_nsobject<NSUserNotificationCenter> notification_center_; | 61 base::scoped_nsobject<NSUserNotificationCenter> notification_center_; |
61 | 62 |
62 // The object in charge of dispatching remote notifications. | 63 // The object in charge of dispatching remote notifications. |
63 base::scoped_nsprotocol<id<AlertDispatcher>> alert_dispatcher_; | 64 base::scoped_nsprotocol<id<AlertDispatcher>> alert_dispatcher_; |
64 | 65 |
65 DISALLOW_COPY_AND_ASSIGN(NotificationPlatformBridgeMac); | 66 DISALLOW_COPY_AND_ASSIGN(NotificationPlatformBridgeMac); |
66 }; | 67 }; |
67 | 68 |
68 #endif // CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_PLATFORM_BRIDGE_MAC_H_ | 69 #endif // CHROME_BROWSER_NOTIFICATIONS_NOTIFICATION_PLATFORM_BRIDGE_MAC_H_ |
OLD | NEW |