summaryrefslogtreecommitdiffstats
path: root/dom/presentation/PresentationDeviceInfoManager.js
diff options
context:
space:
mode:
Diffstat (limited to 'dom/presentation/PresentationDeviceInfoManager.js')
-rw-r--r--dom/presentation/PresentationDeviceInfoManager.js119
1 files changed, 0 insertions, 119 deletions
diff --git a/dom/presentation/PresentationDeviceInfoManager.js b/dom/presentation/PresentationDeviceInfoManager.js
deleted file mode 100644
index 29e7d370c..000000000
--- a/dom/presentation/PresentationDeviceInfoManager.js
+++ /dev/null
@@ -1,119 +0,0 @@
-/* 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/. */
-
-"use strict";
-
-const {classes: Cc, interfaces: Ci, utils: Cu} = Components;
-
-Cu.import("resource://gre/modules/XPCOMUtils.jsm");
-Cu.import("resource://gre/modules/Services.jsm");
-Cu.import("resource://gre/modules/DOMRequestHelper.jsm");
-
-function log(aMsg) {
- //dump("-*- PresentationDeviceInfoManager.js : " + aMsg + "\n");
-}
-
-const PRESENTATIONDEVICEINFOMANAGER_CID = Components.ID("{1bd66bef-f643-4be3-b690-0c656353eafd}");
-const PRESENTATIONDEVICEINFOMANAGER_CONTRACTID = "@mozilla.org/presentation-device/deviceInfo;1";
-
-XPCOMUtils.defineLazyServiceGetter(this, "cpmm",
- "@mozilla.org/childprocessmessagemanager;1",
- "nsIMessageSender");
-
-function PresentationDeviceInfoManager() {}
-
-PresentationDeviceInfoManager.prototype = {
- __proto__: DOMRequestIpcHelper.prototype,
-
- classID: PRESENTATIONDEVICEINFOMANAGER_CID,
- contractID: PRESENTATIONDEVICEINFOMANAGER_CONTRACTID,
- QueryInterface: XPCOMUtils.generateQI([Ci.nsISupportsWeakReference,
- Ci.nsIObserver,
- Ci.nsIDOMGlobalPropertyInitializer]),
-
- receiveMessage: function(aMsg) {
- if (!aMsg || !aMsg.data) {
- return;
- }
-
- let data = aMsg.data;
-
- log("receive aMsg: " + aMsg.name);
- switch (aMsg.name) {
- case "PresentationDeviceInfoManager:OnDeviceChange": {
- let detail = {
- detail: {
- type: data.type,
- deviceInfo: data.deviceInfo,
- }
- };
- let event = new this._window.CustomEvent("devicechange", Cu.cloneInto(detail, this._window));
- this.__DOM_IMPL__.dispatchEvent(event);
- break;
- }
- case "PresentationDeviceInfoManager:GetAll:Result:Ok": {
- let resolver = this.takePromiseResolver(data.requestId);
-
- if (!resolver) {
- return;
- }
-
- resolver.resolve(Cu.cloneInto(data.devices, this._window));
- break;
- }
- case "PresentationDeviceInfoManager:GetAll:Result:Error": {
- let resolver = this.takePromiseResolver(data.requestId);
-
- if (!resolver) {
- return;
- }
-
- resolver.reject(data.error);
- break;
- }
- }
- },
-
- init: function(aWin) {
- log("init");
- this.initDOMRequestHelper(aWin, [
- {name: "PresentationDeviceInfoManager:OnDeviceChange", weakRef: true},
- {name: "PresentationDeviceInfoManager:GetAll:Result:Ok", weakRef: true},
- {name: "PresentationDeviceInfoManager:GetAll:Result:Error", weakRef: true},
- ]);
- },
-
- uninit: function() {
- log("uninit");
- let self = this;
-
- this.forEachPromiseResolver(function(aKey) {
- self.takePromiseResolver(aKey).reject("PresentationDeviceInfoManager got destroyed");
- });
- },
-
- get ondevicechange() {
- return this.__DOM_IMPL__.getEventHandler("ondevicechange");
- },
-
- set ondevicechange(aHandler) {
- this.__DOM_IMPL__.setEventHandler("ondevicechange", aHandler);
- },
-
- getAll: function() {
- log("getAll");
- let self = this;
- return this.createPromiseWithId(function(aResolverId) {
- cpmm.sendAsyncMessage("PresentationDeviceInfoManager:GetAll", {
- requestId: aResolverId,
- });
- });
- },
-
- forceDiscovery: function() {
- cpmm.sendAsyncMessage("PresentationDeviceInfoManager:ForceDiscovery");
- },
-};
-
-this.NSGetFactory = XPCOMUtils.generateNSGetFactory([PresentationDeviceInfoManager]);