// Copyright 2016 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. module message_center.mojom; import "mojo/common/string16.mojom"; import "ui/gfx/image/mojo/image.mojom"; import "url/mojo/url.mojom"; // Matches message_center::NotificationType. enum NotificationType { SIMPLE = 0, BASE_FORMAT = 1, IMAGE = 2, MULTIPLE = 3, PROGRESS = 4, CUSTOM = 5, }; // These fields and their meanings are identical to those in // message_center::RichNotificationData. // TODO(estade): Add the rest of the fields for RichNotificationData. struct RichNotificationData { int32 progress; mojo.common.mojom.String16 progress_status; bool should_make_spoken_feedback_for_popup_updates; bool clickable; bool pinned; mojo.common.mojom.String16 accessible_name; uint32 accent_color; bool use_image_as_icon; }; // TODO(mhashmi): Add the rest of the fields for a Notification struct Notification { NotificationType type; // TODO(mhashmi): Server-side code (in Ash) needs to make sure this id won't // collide with ids from different clients string id; mojo.common.mojom.String16 title; mojo.common.mojom.String16 message; gfx.mojom.ImageSkia? icon; mojo.common.mojom.String16 display_source; url.mojom.Url origin_url; RichNotificationData optional_fields; };