diff options
Diffstat (limited to 'dom/presentation/interfaces/nsIPresentationDevice.idl')
-rw-r--r-- | dom/presentation/interfaces/nsIPresentationDevice.idl | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/dom/presentation/interfaces/nsIPresentationDevice.idl b/dom/presentation/interfaces/nsIPresentationDevice.idl new file mode 100644 index 000000000..63e4a52ef --- /dev/null +++ b/dom/presentation/interfaces/nsIPresentationDevice.idl @@ -0,0 +1,43 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this file, + * You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsISupports.idl" + +interface nsIPresentationControlChannel; + +/* + * Remote device. + */ +[scriptable, uuid(b1e0a7af-5936-4066-8f2e-f789fb9a7e8f)] +interface nsIPresentationDevice : nsISupports +{ + // The unique Id for the device. UUID is recommanded. + readonly attribute AUTF8String id; + + // The human-readable name of this device. + readonly attribute AUTF8String name; + + // TODO expose more info in order to fulfill UX spec + // The category of this device, could be "wifi", "bluetooth", "hdmi", etc. + readonly attribute AUTF8String type; + + /* + * Establish a control channel to this device. + * @returns The control channel for this session. + * @throws NS_ERROR_FAILURE if the establishment fails + */ + nsIPresentationControlChannel establishControlChannel(); + + // Do something when presentation session is disconnected. + void disconnect(); + + /* + * Query if requested presentation URL is supported. + * @params requestedUrl the designated URL for a presentation request. + * @returns true if designated URL is supported. + */ + boolean isRequestedUrlSupported(in DOMString requestedUrl); +}; + + |