| Index: chrome/browser/media/router/mojo/media_status.mojom
|
| diff --git a/chrome/browser/media/router/mojo/media_status.mojom b/chrome/browser/media/router/mojo/media_status.mojom
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..e57edd4c268c84d72224e684aed74ac7c9adc2cd
|
| --- /dev/null
|
| +++ b/chrome/browser/media/router/mojo/media_status.mojom
|
| @@ -0,0 +1,62 @@
|
| +// Copyright 2017 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 media_router.mojom;
|
| +
|
| +import "mojo/common/time.mojom";
|
| +
|
| +// Represents the current state of a media content. This struct should be kept
|
| +// free of details specific to Media Router, so that it can be moved to the
|
| +// media namespace and be reused for other features in the future.
|
| +struct MediaStatus {
|
| + // The main title of the media. For example, in a MediaStatus representing
|
| + // a YouTube Cast session, this could be the title of the video.
|
| + string title;
|
| +
|
| + // Text describing the status of the media, or a secondary title. For example,
|
| + // in a MediaStatus representing a YouTube Cast session, this could be
|
| + // "YouTube".
|
| + string status;
|
| +
|
| + // If this is true, the media can be played and paused through its
|
| + // MediaController.
|
| + bool can_play_pause;
|
| +
|
| + // If this is true, the media can be muted and unmuted through its
|
| + // MediaController.
|
| + bool can_mute;
|
| +
|
| + // If this is true, the media's volume can be changed through its
|
| + // MediaController.
|
| + bool can_set_volume;
|
| +
|
| + // If this is true, the media's current playback position can be changed
|
| + // through its MediaController.
|
| + bool can_seek;
|
| +
|
| + bool is_paused;
|
| +
|
| + bool is_muted;
|
| +
|
| + // Current volume of the media, with 1 being the highest and 0 being the
|
| + // lowest/no sound. When |is_muted| is true, there should be no sound
|
| + // regardless of |volume|.
|
| + float volume;
|
| +
|
| + // The length of the media in milliseconds. A value of 0 indicates that this
|
| + // is a media with no set duration (e.g. a live stream).
|
| + mojo.common.mojom.TimeDelta duration;
|
| +
|
| + // Current playback position in milliseconds. Must be less than or equal to
|
| + // |duration|.
|
| + mojo.common.mojom.TimeDelta current_time;
|
| +};
|
| +
|
| +// Interface for being notified whenever the MediaStatus of a media changes.
|
| +// This interface should be kept free of details specific to Media Router, so
|
| +// that it can be moved to the media namespace and be reused for other features
|
| +// in the future.
|
| +interface MediaStatusObserver {
|
| + OnMediaStatusUpdated(MediaStatus status);
|
| +};
|
|
|