summaryrefslogtreecommitdiffstats
path: root/addon-sdk/source/lib/sdk/window/helpers.js
diff options
context:
space:
mode:
Diffstat (limited to 'addon-sdk/source/lib/sdk/window/helpers.js')
-rw-r--r--addon-sdk/source/lib/sdk/window/helpers.js81
1 files changed, 0 insertions, 81 deletions
diff --git a/addon-sdk/source/lib/sdk/window/helpers.js b/addon-sdk/source/lib/sdk/window/helpers.js
deleted file mode 100644
index 56cfcaba7..000000000
--- a/addon-sdk/source/lib/sdk/window/helpers.js
+++ /dev/null
@@ -1,81 +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 { defer, all } = require('../core/promise');
-const events = require('../system/events');
-const { open: openWindow, onFocus, getToplevelWindow,
- isInteractive, isStartupFinished, getOuterId } = require('./utils');
-const { Ci } = require("chrome");
-
-function open(uri, options) {
- return promise(openWindow.apply(null, arguments), 'load').then(focus);
-}
-exports.open = open;
-
-function close(window) {
- let deferred = defer();
- let toplevelWindow = getToplevelWindow(window);
- let outerId = getOuterId(toplevelWindow);
- events.on("outer-window-destroyed", function onclose({subject}) {
- let id = subject.QueryInterface(Ci.nsISupportsPRUint64).data;
- if (id == outerId) {
- events.off("outer-window-destroyed", onclose);
- deferred.resolve();
- }
- }, true);
- window.close();
- return deferred.promise;
-}
-exports.close = close;
-
-function focus(window) {
- let p = onFocus(window);
- window.focus();
- return p;
-}
-exports.focus = focus;
-
-function ready(window) {
- let { promise: result, resolve } = defer();
-
- if (isInteractive(window))
- resolve(window);
- else
- resolve(promise(window, 'DOMContentLoaded'));
-
- return result;
-}
-exports.ready = ready;
-
-function startup(window) {
- let { promise: result, resolve } = defer();
-
- if (isStartupFinished(window)) {
- resolve(window);
- } else {
- events.on("browser-delayed-startup-finished", function listener({subject}) {
- if (subject === window) {
- events.off("browser-delayed-startup-finished", listener);
- resolve(window);
- }
- });
- }
-
- return result;
-}
-exports.startup = startup;
-
-function promise(target, evt, capture) {
- let deferred = defer();
- capture = !!capture;
-
- target.addEventListener(evt, function eventHandler() {
- target.removeEventListener(evt, eventHandler, capture);
- deferred.resolve(target);
- }, capture);
-
- return deferred.promise;
-}
-exports.promise = promise;