summaryrefslogtreecommitdiff
path: root/data/extensions/spyblock@gnu.org/lib/appSupport.js
diff options
context:
space:
mode:
Diffstat (limited to 'data/extensions/spyblock@gnu.org/lib/appSupport.js')
-rw-r--r--data/extensions/spyblock@gnu.org/lib/appSupport.js121
1 files changed, 6 insertions, 115 deletions
diff --git a/data/extensions/spyblock@gnu.org/lib/appSupport.js b/data/extensions/spyblock@gnu.org/lib/appSupport.js
index 992d568..ba8fdd1 100644
--- a/data/extensions/spyblock@gnu.org/lib/appSupport.js
+++ b/data/extensions/spyblock@gnu.org/lib/appSupport.js
@@ -1,6 +1,6 @@
/*
* This file is part of Adblock Plus <https://adblockplus.org/>,
- * Copyright (C) 2006-2015 Eyeo GmbH
+ * Copyright (C) 2006-2017 eyeo GmbH
*
* Adblock Plus is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 3 as
@@ -212,48 +212,6 @@ exports.removeBrowserLocationListeners = function removeBrowserLocationListeners
progressListeners.delete(window);
};
-/**
- * Maps windows to a list of click listeners.
- */
-let clickListeners = new WeakMap();
-
-/**
- * Makes sure that a function is called whenever the user clicks inside the
- * browser's content area.
- */
-exports.addBrowserClickListener = function addBrowserClickListener(/**Window*/ window, /**Function*/ callback)
-{
- let browser = (exports.getBrowser ? exports.getBrowser(window) : null);
- if (browser)
- {
- browser.addEventListener("click", callback, true);
-
- if (clickListeners.has(window))
- clickListeners.get(window).push(callback);
- else
- clickListeners.set(window, [callback]);
- }
-};
-
-/**
- * Removes all click listeners registered for a window, to be called on
- * cleanup.
- */
-exports.removeBrowserClickListeners = function removeBrowserClickListeners(/**Window*/ window)
-{
- if (!clickListeners.has(window))
- return;
-
- let browser = (exports.getBrowser ? exports.getBrowser(window) : null);
- if (browser)
- {
- let listeners = clickListeners.get(window);
- for (let i = 0; i < listeners.length; i++)
- browser.removeEventListener("click", listeners[i], true);
- }
- clickListeners.delete(window);
-};
-
let {application} = require("info");
switch (application)
{
@@ -269,7 +227,7 @@ switch (application)
exports.addTab = function ff_addTab(window, url, event)
{
if (event)
- window.openNewTabWith(url, exports.getBrowser(window).contentDocument, null, event, false);
+ window.openNewTabWith(url, null, null, event, false);
else
window.gBrowser.loadOneTab(url, {inBackground: false});
};
@@ -317,7 +275,7 @@ switch (application)
exports.addTab = function sm_addTab(window, url, event)
{
if (event || !("gBrowser" in window))
- window.openNewTabWith(url, ("gBrowser" in window ? window.gBrowser.contentDocument : null), null, event, false);
+ window.openNewTabWith(url, null, null, event, false);
else
window.gBrowser.loadOneTab(url, {inBackground: false});
};
@@ -359,7 +317,7 @@ switch (application)
return (browser ? browser.currentURI : null);
}
};
-
+
// for Seamonkey we have to ignore same document flag because of
// bug #1035171 (https://bugzilla.mozilla.org/show_bug.cgi?id=1035171)
let origAddBrowserLocationListener = exports.addBrowserLocationListener;
@@ -617,40 +575,6 @@ switch (application)
progressListeners.delete(window);
};
- exports.addBrowserClickListener = function addBrowserClickListener(/**Window*/ window, /**Function*/ callback)
- {
- if (clickListeners.has(window))
- {
- clickListeners.get(window).callbacks.push(callback);
- return;
- }
-
- let callbacks = [callback];
- let listener = new BrowserChangeListener(window, function(oldBrowser, newBrowser)
- {
- if (oldBrowser)
- for (let i = 0; i < callbacks.length; i++)
- oldBrowser.removeEventListener("click", callbacks[i], true);
- if (newBrowser)
- for (let i = 0; i < callbacks.length; i++)
- newBrowser.addEventListener("click", callbacks[i], true);
- });
- listener.callbacks = callbacks;
-
- clickListeners.set(window, listener);
- };
-
- exports.removeBrowserClickListeners = function removeBrowserClickListeners(/**Window*/ window)
- {
- if (!clickListeners.has(window))
- return;
-
- let listener = clickListeners.get(window);
- listener.detach();
-
- clickListeners.delete(window);
- };
-
// Make sure to close/reopen list of blockable items when the user changes tabs
let {WindowObserver} = require("windowObserver");
new WindowObserver({
@@ -690,6 +614,7 @@ switch (application)
}
case "fennec2":
+ case "adblockbrowser":
{
exports.isKnownWindow = (window) => window.document.documentElement.id == "main-window";
@@ -805,40 +730,6 @@ switch (application)
progressListeners.delete(window);
};
- exports.addBrowserClickListener = function ffn_addBrowserClickListener(/**Window*/ window, /**Function*/ callback)
- {
- if (clickListeners.has(window))
- {
- clickListeners.get(window).callbacks.push(callback);
- return;
- }
-
- let callbacks = [callback];
- let listener = new BrowserChangeListener(window, function(oldBrowser, newBrowser)
- {
- if (oldBrowser)
- for (let i = 0; i < callbacks.length; i++)
- oldBrowser.removeEventListener("click", callbacks[i], true);
- if (newBrowser)
- for (let i = 0; i < callbacks.length; i++)
- newBrowser.addEventListener("click", callbacks[i], true);
- });
- listener.callbacks = callbacks;
-
- clickListeners.set(window, listener);
- };
-
- exports.removeBrowserClickListeners = function ffn_removeBrowserClickListeners(/**Window*/ window)
- {
- if (!clickListeners.has(window))
- return;
-
- let listener = clickListeners.get(window);
- listener.detach();
-
- clickListeners.delete(window);
- };
-
let {Filter} = require("filterClasses");
let {Prefs} = require("prefs");
let {Policy} = require("contentPolicy");
@@ -876,7 +767,7 @@ switch (application)
onShutdown.add(function()
{
let window = null;
- for (window in UI.applicationWindows)
+ for (window of UI.applicationWindows)
break;
if (window && menuItem)