diff options
Diffstat (limited to 'dom/presentation/interfaces/nsIPresentationListener.idl')
-rw-r--r-- | dom/presentation/interfaces/nsIPresentationListener.idl | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/dom/presentation/interfaces/nsIPresentationListener.idl b/dom/presentation/interfaces/nsIPresentationListener.idl new file mode 100644 index 000000000..546c2fd4b --- /dev/null +++ b/dom/presentation/interfaces/nsIPresentationListener.idl @@ -0,0 +1,50 @@ +/* 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" + +[ref] native URLArrayRef(const nsTArray<nsString>); + +[uuid(0105f837-4279-4715-9d5b-2dc3f8b65353)] +interface nsIPresentationAvailabilityListener : nsISupports +{ + /* + * Called when device availability changes. + */ + [noscript] void notifyAvailableChange(in URLArrayRef urls, + in bool available); +}; + +[scriptable, uuid(7dd48df8-8f8c-48c7-ac37-7b9fd1acf2f8)] +interface nsIPresentationSessionListener : nsISupports +{ + const unsigned short STATE_CONNECTING = 0; + const unsigned short STATE_CONNECTED = 1; + const unsigned short STATE_CLOSED = 2; + const unsigned short STATE_TERMINATED = 3; + + /* + * Called when session state changes. + */ + void notifyStateChange(in DOMString sessionId, + in unsigned short state, + in nsresult reason); + + /* + * Called when receive messages. + */ + void notifyMessage(in DOMString sessionId, + in ACString data, + in boolean isBinary); +}; + +[scriptable, uuid(27f101d7-9ed1-429e-b4f8-43b00e8e111c)] +interface nsIPresentationRespondingListener : nsISupports +{ + /* + * Called when an incoming session connects. + */ + void notifySessionConnect(in unsigned long long windowId, + in DOMString sessionId); +}; |