diff options
Diffstat (limited to 'tools/addon-sdk-1.12/lib/sdk/windows/fennec.js')
-rw-r--r-- | tools/addon-sdk-1.12/lib/sdk/windows/fennec.js | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/tools/addon-sdk-1.12/lib/sdk/windows/fennec.js b/tools/addon-sdk-1.12/lib/sdk/windows/fennec.js deleted file mode 100644 index a497ea9..0000000 --- a/tools/addon-sdk-1.12/lib/sdk/windows/fennec.js +++ /dev/null @@ -1,84 +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 { Class } = require('../core/heritage'); -const { BrowserWindow } = require('../window/browser'); -const windowUtils = require('../deprecated/window-utils'); -const { WindowTracker } = windowUtils; -const { isBrowser } = require('../window/utils'); -const { windowNS } = require('../window/namespace'); -const { on, off, once, emit } = require('../event/core'); -const { method } = require('../lang/functional'); -const { EventTarget } = require('../event/target'); -const { List, addListItem } = require('../util/list'); - -const ERR_FENNEC_MSG = 'This method is not yet supported by Fennec, consider using require("tabs") instead'; - -// NOTE: On Fennec there is only one window. - -let BrowserWindows = Class({ - implements: [ List ], - extends: EventTarget, - initialize: function() { - List.prototype.initialize.apply(this); - }, - get activeWindow() { - let window = windowUtils.activeBrowserWindow; - return window ? getBrowserWindow({window: window}) : null; - }, - open: function open(options) { - throw new Error(ERR_FENNEC_MSG); - return null; - } -}); -const browserWindows = exports.browserWindows = BrowserWindows(); - - -/** - * Gets a `BrowserWindow` for the given `chromeWindow` if previously - * registered, `null` otherwise. - */ -function getRegisteredWindow(chromeWindow) { - for each (let window in browserWindows) { - if (chromeWindow === windowNS(window).window) - return window; - } - - return null; -} - -/** - * Gets a `BrowserWindow` for the provided window options obj - * @params {Object} options - * Options that are passed to the the `BrowserWindowTrait` - * @returns {BrowserWindow} - */ -function getBrowserWindow(options) { - let window = null; - - // if we have a BrowserWindow already then use it - if ('window' in options) - window = getRegisteredWindow(options.window); - if (window) - return window; - - // we don't have a BrowserWindow yet, so create one - var window = BrowserWindow(options); - addListItem(browserWindows, window); - return window; -} - -WindowTracker({ - onTrack: function onTrack(chromeWindow) { - if (!isBrowser(chromeWindow)) return; - let window = getBrowserWindow({ window: chromeWindow }); - emit(browserWindows, 'open', window); - }, - onUntrack: function onUntrack(chromeWindow) { - if (!isBrowser(chromeWindow)) return; - let window = getBrowserWindow({ window: chromeWindow }); - emit(browserWindows, 'close', window); - } -}); |