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 3 // found in the LICENSE file. 4 5 #ifndef UI_MESSAGE_CENTER_NOTIFICATION_TYPES_H_ 6 #define UI_MESSAGE_CENTER_NOTIFICATION_TYPES_H_ 7 8 #include "ui/message_center/message_center_export.h" 9 10 namespace message_center { 11 12 // Keys for optional fields in Notification. 13 MESSAGE_CENTER_EXPORT extern const char kPriorityKey[]; 14 MESSAGE_CENTER_EXPORT extern const char kTimestampKey[]; 15 MESSAGE_CENTER_EXPORT extern const char kButtonOneTitleKey[]; 16 MESSAGE_CENTER_EXPORT extern const char kButtonOneIconUrlKey[]; 17 MESSAGE_CENTER_EXPORT extern const char kButtonTwoTitleKey[]; 18 MESSAGE_CENTER_EXPORT extern const char kButtonTwoIconUrlKey[]; 19 MESSAGE_CENTER_EXPORT extern const char kExpandedMessageKey[]; 20 MESSAGE_CENTER_EXPORT extern const char kImageUrlKey[]; 21 MESSAGE_CENTER_EXPORT extern const char kItemsKey[]; 22 MESSAGE_CENTER_EXPORT extern const char kItemTitleKey[]; 23 MESSAGE_CENTER_EXPORT extern const char kItemMessageKey[]; 24 // This key should not be used by the extension API handler. It's not allowed 25 // to use it there, it's used to cancel timeout for webkit notifications. 26 MESSAGE_CENTER_EXPORT extern const char kPrivateNeverTimeoutKey[]; 27 28 enum NotificationType { 29 NOTIFICATION_TYPE_SIMPLE, 30 NOTIFICATION_TYPE_BASE_FORMAT, 31 NOTIFICATION_TYPE_IMAGE, 32 NOTIFICATION_TYPE_MULTIPLE, 33 NOTIFICATION_TYPE_PROGRESS // Notification with progress bar. 34 }; 35 36 enum NotificationPriority { 37 MIN_PRIORITY = -2, 38 LOW_PRIORITY = -1, 39 DEFAULT_PRIORITY = 0, 40 HIGH_PRIORITY = 1, 41 MAX_PRIORITY = 2, 42 43 // Top priority for system-level notifications.. This can't be set from 44 // kPriorityKey, instead you have to call SetSystemPriority() of 45 // Notification object. 46 SYSTEM_PRIORITY = 3, 47 }; 48 49 } // namespace message_center 50 51 #endif // UI_MESSAGE_CENTER_NOTIFICATION_TYPES_H_ 52