Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(427)

Side by Side Diff: content/common/platform_notification_messages.h

Issue 1620203004: Notification action icons prototype. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Make it work on Android and clean up. Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 // Messages for platform-native notifications using the Web Notification API. 5 // Messages for platform-native notifications using the Web Notification API.
6 // Multiply-included message file, hence no include guard. 6 // Multiply-included message file, hence no include guard.
7 7
8 #include <stdint.h> 8 #include <stdint.h>
9 #include <string> 9 #include <string>
10 #include <utility> 10 #include <utility>
11 #include <vector> 11 #include <vector>
12 12
13 #include "content/public/common/notification_resources.h"
13 #include "content/public/common/platform_notification_data.h" 14 #include "content/public/common/platform_notification_data.h"
14 #include "ipc/ipc_message_macros.h" 15 #include "ipc/ipc_message_macros.h"
15 #include "third_party/WebKit/public/platform/modules/notifications/WebNotificati onPermission.h" 16 #include "third_party/WebKit/public/platform/modules/notifications/WebNotificati onPermission.h"
16 #include "third_party/skia/include/core/SkBitmap.h" 17 #include "third_party/skia/include/core/SkBitmap.h"
17 18
18 // Singly-included section for type definitions. 19 // Singly-included section for type definitions.
19 #ifndef CONTENT_COMMON_PLATFORM_NOTIFICATION_MESSAGES_H_ 20 #ifndef CONTENT_COMMON_PLATFORM_NOTIFICATION_MESSAGES_H_
20 #define CONTENT_COMMON_PLATFORM_NOTIFICATION_MESSAGES_H_ 21 #define CONTENT_COMMON_PLATFORM_NOTIFICATION_MESSAGES_H_
21 22
22 // Defines the pair of [persistent notification id] => [notification data] used 23 // Defines the pair of [persistent notification id] => [notification data] used
23 // when getting the notifications for a given Service Worker registration. 24 // when getting the notifications for a given Service Worker registration.
24 using PersistentNotificationInfo = 25 using PersistentNotificationInfo =
25 std::pair<int64_t, content::PlatformNotificationData>; 26 std::pair<int64_t, content::PlatformNotificationData>;
26 27
27 #endif // CONTENT_COMMON_PLATFORM_NOTIFICATION_MESSAGES_H_ 28 #endif // CONTENT_COMMON_PLATFORM_NOTIFICATION_MESSAGES_H_
28 29
29 #define IPC_MESSAGE_START PlatformNotificationMsgStart 30 #define IPC_MESSAGE_START PlatformNotificationMsgStart
30 31
31 IPC_ENUM_TRAITS_MAX_VALUE(blink::WebNotificationPermission, 32 IPC_ENUM_TRAITS_MAX_VALUE(blink::WebNotificationPermission,
32 blink::WebNotificationPermissionLast) 33 blink::WebNotificationPermissionLast)
33 34
34 IPC_ENUM_TRAITS_MAX_VALUE( 35 IPC_ENUM_TRAITS_MAX_VALUE(
35 content::PlatformNotificationData::Direction, 36 content::PlatformNotificationData::Direction,
36 content::PlatformNotificationData::DIRECTION_LAST) 37 content::PlatformNotificationData::DIRECTION_LAST)
37 38
38 IPC_STRUCT_TRAITS_BEGIN(content::PlatformNotificationAction) 39 IPC_STRUCT_TRAITS_BEGIN(content::PlatformNotificationAction)
39 IPC_STRUCT_TRAITS_MEMBER(action) 40 IPC_STRUCT_TRAITS_MEMBER(action)
40 IPC_STRUCT_TRAITS_MEMBER(title) 41 IPC_STRUCT_TRAITS_MEMBER(title)
42 IPC_STRUCT_TRAITS_MEMBER(icon)
41 IPC_STRUCT_TRAITS_END() 43 IPC_STRUCT_TRAITS_END()
42 44
43 IPC_STRUCT_TRAITS_BEGIN(content::PlatformNotificationData) 45 IPC_STRUCT_TRAITS_BEGIN(content::PlatformNotificationData)
44 IPC_STRUCT_TRAITS_MEMBER(title) 46 IPC_STRUCT_TRAITS_MEMBER(title)
45 IPC_STRUCT_TRAITS_MEMBER(direction) 47 IPC_STRUCT_TRAITS_MEMBER(direction)
46 IPC_STRUCT_TRAITS_MEMBER(lang) 48 IPC_STRUCT_TRAITS_MEMBER(lang)
47 IPC_STRUCT_TRAITS_MEMBER(body) 49 IPC_STRUCT_TRAITS_MEMBER(body)
48 IPC_STRUCT_TRAITS_MEMBER(tag) 50 IPC_STRUCT_TRAITS_MEMBER(tag)
49 IPC_STRUCT_TRAITS_MEMBER(icon) 51 IPC_STRUCT_TRAITS_MEMBER(icon)
50 IPC_STRUCT_TRAITS_MEMBER(vibration_pattern) 52 IPC_STRUCT_TRAITS_MEMBER(vibration_pattern)
51 IPC_STRUCT_TRAITS_MEMBER(silent) 53 IPC_STRUCT_TRAITS_MEMBER(silent)
52 IPC_STRUCT_TRAITS_MEMBER(require_interaction) 54 IPC_STRUCT_TRAITS_MEMBER(require_interaction)
53 IPC_STRUCT_TRAITS_MEMBER(data) 55 IPC_STRUCT_TRAITS_MEMBER(data)
54 IPC_STRUCT_TRAITS_MEMBER(actions) 56 IPC_STRUCT_TRAITS_MEMBER(actions)
55 IPC_STRUCT_TRAITS_END() 57 IPC_STRUCT_TRAITS_END()
56 58
59 IPC_STRUCT_TRAITS_BEGIN(content::NotificationResources)
60 IPC_STRUCT_TRAITS_MEMBER(notification_icon)
61 IPC_STRUCT_TRAITS_MEMBER(action_icons)
62 IPC_STRUCT_TRAITS_END()
63
57 // Messages sent from the browser to the renderer. 64 // Messages sent from the browser to the renderer.
58 65
59 // Informs the renderer that the browser has displayed the notification. 66 // Informs the renderer that the browser has displayed the notification.
60 IPC_MESSAGE_CONTROL1(PlatformNotificationMsg_DidShow, 67 IPC_MESSAGE_CONTROL1(PlatformNotificationMsg_DidShow,
61 int /* notification_id */) 68 int /* notification_id */)
62 69
63 // Informs the renderer that the notification has been closed. 70 // Informs the renderer that the notification has been closed.
64 IPC_MESSAGE_CONTROL1(PlatformNotificationMsg_DidClose, 71 IPC_MESSAGE_CONTROL1(PlatformNotificationMsg_DidClose,
65 int /* notification_id */) 72 int /* notification_id */)
66 73
(...skipping 10 matching lines...) Expand all
77 84
78 // Reply to PlatformNotificationHostMsg_GetNotifications sharing a vector of 85 // Reply to PlatformNotificationHostMsg_GetNotifications sharing a vector of
79 // available notifications per the request's constraints. 86 // available notifications per the request's constraints.
80 IPC_MESSAGE_CONTROL2(PlatformNotificationMsg_DidGetNotifications, 87 IPC_MESSAGE_CONTROL2(PlatformNotificationMsg_DidGetNotifications,
81 int /* request_id */, 88 int /* request_id */,
82 std::vector<PersistentNotificationInfo> 89 std::vector<PersistentNotificationInfo>
83 /* notifications */) 90 /* notifications */)
84 91
85 // Messages sent from the renderer to the browser. 92 // Messages sent from the renderer to the browser.
86 93
87 IPC_MESSAGE_CONTROL4(PlatformNotificationHostMsg_Show, 94 IPC_MESSAGE_CONTROL4(
88 int /* notification_id */, 95 PlatformNotificationHostMsg_Show,
89 GURL /* origin */, 96 int /* notification_id */,
90 SkBitmap /* icon */, 97 GURL /* origin */,
91 content::PlatformNotificationData /* notification_data */) 98 content::PlatformNotificationData /* notification_data */,
99 content::NotificationResources /* notification_resources */)
92 100
93 IPC_MESSAGE_CONTROL5(PlatformNotificationHostMsg_ShowPersistent, 101 IPC_MESSAGE_CONTROL5(
94 int /* request_id */, 102 PlatformNotificationHostMsg_ShowPersistent,
95 int64_t /* service_worker_registration_id */, 103 int /* request_id */,
96 GURL /* origin */, 104 int64_t /* service_worker_registration_id */,
97 SkBitmap /* icon */, 105 GURL /* origin */,
98 content::PlatformNotificationData /* notification_data */) 106 content::PlatformNotificationData /* notification_data */,
107 content::NotificationResources /* notification_resources */)
99 108
100 IPC_MESSAGE_CONTROL4(PlatformNotificationHostMsg_GetNotifications, 109 IPC_MESSAGE_CONTROL4(PlatformNotificationHostMsg_GetNotifications,
101 int /* request_id */, 110 int /* request_id */,
102 int64_t /* service_worker_registration_id */, 111 int64_t /* service_worker_registration_id */,
103 GURL /* origin */, 112 GURL /* origin */,
104 std::string /* filter_tag */) 113 std::string /* filter_tag */)
105 114
106 IPC_MESSAGE_CONTROL1(PlatformNotificationHostMsg_Close, 115 IPC_MESSAGE_CONTROL1(PlatformNotificationHostMsg_Close,
107 int /* notification_id */) 116 int /* notification_id */)
108 117
109 IPC_MESSAGE_CONTROL2(PlatformNotificationHostMsg_ClosePersistent, 118 IPC_MESSAGE_CONTROL2(PlatformNotificationHostMsg_ClosePersistent,
110 GURL /* origin */, 119 GURL /* origin */,
111 int64_t /* persistent_notification_id */) 120 int64_t /* persistent_notification_id */)
112 121
113 IPC_SYNC_MESSAGE_CONTROL1_1(PlatformNotificationHostMsg_CheckPermission, 122 IPC_SYNC_MESSAGE_CONTROL1_1(PlatformNotificationHostMsg_CheckPermission,
114 GURL /* origin */, 123 GURL /* origin */,
115 blink::WebNotificationPermission /* result */) 124 blink::WebNotificationPermission /* result */)
OLDNEW
« no previous file with comments | « content/child/notifications/pending_notifications_tracker.cc ('k') | content/content_child.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698