mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 1223585 - [webext] Annotate ignoreEvent (r=kmag)
This commit is contained in:
parent
fb73ec3419
commit
2639bfa14e
@ -6,7 +6,6 @@ var Bookmarks = PlacesUtils.bookmarks;
|
|||||||
Cu.import("resource://gre/modules/ExtensionUtils.jsm");
|
Cu.import("resource://gre/modules/ExtensionUtils.jsm");
|
||||||
var {
|
var {
|
||||||
EventManager,
|
EventManager,
|
||||||
ignoreEvent,
|
|
||||||
runSafe,
|
runSafe,
|
||||||
} = ExtensionUtils;
|
} = ExtensionUtils;
|
||||||
|
|
||||||
|
@ -11,7 +11,6 @@ Cu.import("resource://gre/modules/ExtensionUtils.jsm");
|
|||||||
var {
|
var {
|
||||||
EventManager,
|
EventManager,
|
||||||
DefaultWeakMap,
|
DefaultWeakMap,
|
||||||
ignoreEvent,
|
|
||||||
runSafe,
|
runSafe,
|
||||||
} = ExtensionUtils;
|
} = ExtensionUtils;
|
||||||
|
|
||||||
|
@ -6,7 +6,6 @@ Cu.import("resource://gre/modules/ExtensionUtils.jsm");
|
|||||||
var {
|
var {
|
||||||
EventManager,
|
EventManager,
|
||||||
DefaultWeakMap,
|
DefaultWeakMap,
|
||||||
ignoreEvent,
|
|
||||||
runSafe,
|
runSafe,
|
||||||
} = ExtensionUtils;
|
} = ExtensionUtils;
|
||||||
|
|
||||||
|
@ -230,7 +230,7 @@ extensions.registerAPI((extension, context) => {
|
|||||||
};
|
};
|
||||||
}).api(),
|
}).api(),
|
||||||
|
|
||||||
onReplaced: ignoreEvent(),
|
onReplaced: ignoreEvent(context, "tabs.onReplaced"),
|
||||||
|
|
||||||
onRemoved: new EventManager(context, "tabs.onRemoved", fire => {
|
onRemoved: new EventManager(context, "tabs.onRemoved", fire => {
|
||||||
let tabListener = event => {
|
let tabListener = event => {
|
||||||
|
@ -5,7 +5,6 @@ XPCOMUtils.defineLazyServiceGetter(this, "aboutNewTabService",
|
|||||||
Cu.import("resource://gre/modules/ExtensionUtils.jsm");
|
Cu.import("resource://gre/modules/ExtensionUtils.jsm");
|
||||||
var {
|
var {
|
||||||
EventManager,
|
EventManager,
|
||||||
ignoreEvent,
|
|
||||||
runSafe,
|
runSafe,
|
||||||
} = ExtensionUtils;
|
} = ExtensionUtils;
|
||||||
|
|
||||||
|
@ -33,7 +33,6 @@ var {
|
|||||||
runSafeSyncWithoutClone,
|
runSafeSyncWithoutClone,
|
||||||
MessageBroker,
|
MessageBroker,
|
||||||
Messenger,
|
Messenger,
|
||||||
ignoreEvent,
|
|
||||||
injectAPI,
|
injectAPI,
|
||||||
flushJarCache,
|
flushJarCache,
|
||||||
} = ExtensionUtils;
|
} = ExtensionUtils;
|
||||||
|
@ -245,12 +245,27 @@ SingletonEventManager.prototype = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
// Simple API for event listeners where events never fire.
|
// Simple API for event listeners where events never fire.
|
||||||
function ignoreEvent()
|
function ignoreEvent(context, name)
|
||||||
{
|
{
|
||||||
return {
|
return {
|
||||||
addListener: function(context, callback) {},
|
addListener: function(callback) {
|
||||||
removeListener: function(context, callback) {},
|
let id = context.extension.id;
|
||||||
hasListener: function(context, callback) {},
|
let frame = Components.stack.caller;
|
||||||
|
let msg = `In add-on ${id}, attempting to use listener "${name}", which is unimplemented.`;
|
||||||
|
let winID = context.contentWindow.QueryInterface(Ci.nsIInterfaceRequestor)
|
||||||
|
.getInterface(Ci.nsIDOMWindowUtils).currentInnerWindowID;
|
||||||
|
let scriptError = Cc["@mozilla.org/scripterror;1"]
|
||||||
|
.createInstance(Ci.nsIScriptError);
|
||||||
|
scriptError.initWithWindowID(msg, frame.filename, null,
|
||||||
|
frame.lineNumber, frame.columnNumber,
|
||||||
|
Ci.nsIScriptError.warningFlag,
|
||||||
|
"content javascript", winID);
|
||||||
|
let consoleService = Cc['@mozilla.org/consoleservice;1']
|
||||||
|
.getService(Ci.nsIConsoleService);
|
||||||
|
consoleService.logMessage(scriptError);
|
||||||
|
},
|
||||||
|
removeListener: function(callback) {},
|
||||||
|
hasListener: function(callback) {},
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3,7 +3,6 @@ var { classes: Cc, interfaces: Ci, utils: Cu } = Components;
|
|||||||
Cu.import("resource://gre/modules/ExtensionUtils.jsm");
|
Cu.import("resource://gre/modules/ExtensionUtils.jsm");
|
||||||
var {
|
var {
|
||||||
EventManager,
|
EventManager,
|
||||||
ignoreEvent,
|
|
||||||
runSafe,
|
runSafe,
|
||||||
} = ExtensionUtils;
|
} = ExtensionUtils;
|
||||||
|
|
||||||
|
@ -2,7 +2,6 @@ const { interfaces: Ci, utils: Cu } = Components;
|
|||||||
Cu.import("resource://gre/modules/ExtensionUtils.jsm");
|
Cu.import("resource://gre/modules/ExtensionUtils.jsm");
|
||||||
var {
|
var {
|
||||||
EventManager,
|
EventManager,
|
||||||
ignoreEvent,
|
|
||||||
runSafe,
|
runSafe,
|
||||||
} = ExtensionUtils;
|
} = ExtensionUtils;
|
||||||
|
|
||||||
|
@ -138,8 +138,8 @@ extensions.registerPrivilegedAPI("notifications", (extension, context) => {
|
|||||||
}).api(),
|
}).api(),
|
||||||
|
|
||||||
// FIXME
|
// FIXME
|
||||||
onButtonClicked: ignoreEvent(),
|
onButtonClicked: ignoreEvent(context, "notifications.onButtonClicked"),
|
||||||
onClicked: ignoreEvent(),
|
onClicked: ignoreEvent(context, "notifications.onClicked"),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
@ -37,7 +37,7 @@ extensions.registerAPI((extension, context) => {
|
|||||||
};
|
};
|
||||||
}).api(),
|
}).api(),
|
||||||
|
|
||||||
onInstalled: ignoreEvent(),
|
onInstalled: ignoreEvent(context, "runtime.onInstalled"),
|
||||||
|
|
||||||
onMessage: context.messenger.onMessage("runtime.onMessage"),
|
onMessage: context.messenger.onMessage("runtime.onMessage"),
|
||||||
|
|
||||||
|
@ -6,7 +6,6 @@ XPCOMUtils.defineLazyModuleGetter(this, "ExtensionStorage",
|
|||||||
Cu.import("resource://gre/modules/ExtensionUtils.jsm");
|
Cu.import("resource://gre/modules/ExtensionUtils.jsm");
|
||||||
var {
|
var {
|
||||||
EventManager,
|
EventManager,
|
||||||
ignoreEvent,
|
|
||||||
runSafe,
|
runSafe,
|
||||||
} = ExtensionUtils;
|
} = ExtensionUtils;
|
||||||
|
|
||||||
|
@ -68,7 +68,7 @@ extensions.registerPrivilegedAPI("webNavigation", (extension, context) => {
|
|||||||
onCompleted: new WebNavigationEventManager(context, "onCompleted").api(),
|
onCompleted: new WebNavigationEventManager(context, "onCompleted").api(),
|
||||||
onErrorOccurred: new WebNavigationEventManager(context, "onErrorOccurred").api(),
|
onErrorOccurred: new WebNavigationEventManager(context, "onErrorOccurred").api(),
|
||||||
onReferenceFragmentUpdated: new WebNavigationEventManager(context, "onReferenceFragmentUpdated").api(),
|
onReferenceFragmentUpdated: new WebNavigationEventManager(context, "onReferenceFragmentUpdated").api(),
|
||||||
onCreatedNavigationTarget: ignoreEvent(),
|
onCreatedNavigationTarget: ignoreEvent(context, "webNavigation.onCreatedNavigationTarget"),
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
@ -17,6 +17,9 @@ add_task(function* test_notifications() {
|
|||||||
|
|
||||||
var opts = {title: "Testing Notification", message: "Carry on"};
|
var opts = {title: "Testing Notification", message: "Carry on"};
|
||||||
|
|
||||||
|
// Test an unimplemented listener.
|
||||||
|
browser.notifications.onClicked.addListener(function() {});
|
||||||
|
|
||||||
browser.notifications.create("5", opts, function(id) {
|
browser.notifications.create("5", opts, function(id) {
|
||||||
browser.test.sendMessage("running", id);
|
browser.test.sendMessage("running", id);
|
||||||
browser.test.notifyPass("background test passed");
|
browser.test.notifyPass("background test passed");
|
||||||
|
Loading…
Reference in New Issue
Block a user