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

Side by Side Diff: chrome/common/extensions/api/experimental_notification.idl

Issue 12334047: Adding user data to the notification options. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Adding clearAll/get/getAll Created 7 years, 9 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 [nodoc] namespace experimental.notification { 5 [nodoc] namespace experimental.notification {
6 enum TemplateType { 6 enum TemplateType {
7 // icon, title, message 7 // icon, title, message
8 simple, 8 simple,
9 9
10 // icon, title, message, expandedMessage, up to two buttons 10 // icon, title, message, expandedMessage, up to two buttons
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 NotificationButton[]? buttons; 58 NotificationButton[]? buttons;
59 59
60 // Secondary notification content. 60 // Secondary notification content.
61 DOMString? expandedMessage; 61 DOMString? expandedMessage;
62 62
63 // Image thumbnail for image-type notifications. 63 // Image thumbnail for image-type notifications.
64 DOMString? imageUrl; 64 DOMString? imageUrl;
65 65
66 // Items for multi-item notifications. 66 // Items for multi-item notifications.
67 NotificationItem[]? items; 67 NotificationItem[]? items;
68
69 // Object specifying user data for the notification. Values that cannot be
70 // serialized (functions, etc) will be ignored.
71 object? userData;
68 }; 72 };
69 73
70 callback CreateCallback = void (DOMString notificationId); 74 callback CreateCallback = void (DOMString notificationId);
71 75
72 callback UpdateCallback = void (boolean wasUpdated); 76 callback UpdateCallback = void (boolean wasUpdated);
73 77
74 callback ClearCallback = void (boolean wasCleared); 78 callback ClearCallback = void (boolean wasCleared);
75 79
80 // |useData| is NotificationOptions.userData that was passed to create/update
81 // call, if was specified, null otherwise.
82 callback GetCallback = void (object userData);
83
84 // |notifications| is a map from all notifications IDs of all notifications
85 // to their userData objects, if were specified, otherwise, nulls.
86 callback GetAllCallback = void (object notifications);
87
76 interface Functions { 88 interface Functions {
77 // Creates and displays a notification having the contents in |options|, 89 // Creates and displays a notification having the contents in |options|,
78 // identified by the id |notificationId|. If |notificationId| is empty, 90 // identified by the id |notificationId|. If |notificationId| is empty,
79 // |create| generates an id. If |notificationId| matches an existing 91 // |create| generates an id. If |notificationId| matches an existing
80 // notification, |create| first clears that notification before proceeding 92 // notification, |create| first clears that notification before proceeding
81 // with the create operation. |callback| returns the notification id 93 // with the create operation. |callback| returns the notification id
82 // (either supplied or generated) that represents the created notification. 94 // (either supplied or generated) that represents the created notification.
83 static void create(DOMString notificationId, 95 static void create(DOMString notificationId,
84 NotificationOptions options, 96 NotificationOptions options,
85 CreateCallback callback); 97 CreateCallback callback);
86 98
87 // Updates an existing notification having the id |notificationId| and the 99 // Updates an existing notification having the id |notificationId| and the
88 // options |options|. |callback| indicates whether a matching notification 100 // options |options|. |callback| indicates whether a matching notification
89 // existed. 101 // existed.
90 static void update(DOMString notificationId, 102 static void update(DOMString notificationId,
91 NotificationOptions options, 103 NotificationOptions options,
92 UpdateCallback callback); 104 UpdateCallback callback);
93 105
94 // Given a |notificationId| returned by the |create| method, clears the 106 // Given a |notificationId| returned by the |create| method, clears the
95 // corresponding notification. |callback| indicates whether a matching 107 // corresponding notification. |callback| indicates whether a matching
96 // notification existed. 108 // notification existed.
97 static void clear(DOMString notificationId, ClearCallback callback); 109 static void clear(DOMString notificationId, ClearCallback callback);
110
111 static void clearAll();
112
113 static void get(DOMString notificationId, GetCallback callback);
114
115 // Returns to |callback| ids and user data of all locally created
116 // notifications.
117 static void getAll(GetAllCallback callback);
98 }; 118 };
99 119
100 interface Events { 120 interface Events {
101 // The system displayed the notification. Not all created notifications are 121 // The system displayed the notification. Not all created notifications are
102 // displayed; for example, a low-priority notification might simply appear 122 // displayed; for example, a low-priority notification might simply appear
103 // in the message center without interrupting the user. 123 // in the message center without interrupting the user.
104 static void onDisplayed(DOMString notificationId); 124 static void onDisplayed(DOMString notificationId);
105 125
106 // The notification closed, either by the system or by user action. 126 // The notification closed, either by the system or by user action.
107 static void onClosed(DOMString notificationId, boolean byUser); 127 static void onClosed(DOMString notificationId,
128 boolean byUser,
129 object userData);
108 130
109 // The user clicked in a non-button area of the notification. 131 // The user clicked in a non-button area of the notification.
110 static void onClicked(DOMString notificationId); 132 static void onClicked(DOMString notificationId,
133 object userData);
111 134
112 // The user pressed a button in the notification. 135 // The user pressed a button in the notification.
113 static void onButtonClicked(DOMString notificationId, long buttonIndex); 136 static void onButtonClicked(DOMString notificationId,
137 long buttonIndex,
138 object userData);
114 }; 139 };
115 140
116 }; 141 };
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698