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 10namespace message_center { 11 12// Keys for optional fields in Notification. 13MESSAGE_CENTER_EXPORT extern const char kPriorityKey[]; 14MESSAGE_CENTER_EXPORT extern const char kTimestampKey[]; 15MESSAGE_CENTER_EXPORT extern const char kButtonOneTitleKey[]; 16MESSAGE_CENTER_EXPORT extern const char kButtonOneIconUrlKey[]; 17MESSAGE_CENTER_EXPORT extern const char kButtonTwoTitleKey[]; 18MESSAGE_CENTER_EXPORT extern const char kButtonTwoIconUrlKey[]; 19MESSAGE_CENTER_EXPORT extern const char kExpandedMessageKey[]; 20MESSAGE_CENTER_EXPORT extern const char kImageUrlKey[]; 21MESSAGE_CENTER_EXPORT extern const char kItemsKey[]; 22MESSAGE_CENTER_EXPORT extern const char kItemTitleKey[]; 23MESSAGE_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. 26MESSAGE_CENTER_EXPORT extern const char kPrivateNeverTimeoutKey[]; 27 28enum 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 36enum 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