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