| Index: chrome/renderer/resources/extensions/event.js
|
| diff --git a/chrome/renderer/resources/extensions/event.js b/chrome/renderer/resources/extensions/event.js
|
| index 6c344c8f49ef3c67fdb4f5ded8830a797db814e2..2bd3649af218d291c97f65f4295facc3faf2e4e2 100644
|
| --- a/chrome/renderer/resources/extensions/event.js
|
| +++ b/chrome/renderer/resources/extensions/event.js
|
| @@ -15,6 +15,7 @@
|
| var sendRequest = require('sendRequest').sendRequest;
|
| var utils = require('utils');
|
| var validate = require('schemaUtils').validate;
|
| + var unloadEvent = require('unload_event');
|
|
|
| var chromeHidden = requireNative('chrome_hidden').GetChromeHidden();
|
| var chrome = requireNative('chrome').GetChrome();
|
| @@ -200,7 +201,7 @@
|
|
|
| // Dispatches a named event with the given argument array. The args array is
|
| // the list of arguments that will be sent to the event callback.
|
| - chromeHidden.Event.dispatchEvent = function(name, args, filteringInfo) {
|
| + function dispatchEvent(name, args, filteringInfo) {
|
| var listenerIDs = null;
|
|
|
| if (filteringInfo)
|
| @@ -221,13 +222,7 @@
|
| eventArgumentMassagers[name](args, dispatchArgs);
|
| else
|
| dispatchArgs(args);
|
| - };
|
| -
|
| - // Test if a named event has any listeners.
|
| - chromeHidden.Event.hasListener = function(name) {
|
| - return (attachedNamedEvents[name] &&
|
| - attachedNamedEvents[name].listeners_.length > 0);
|
| - };
|
| + }
|
|
|
| // Registers a callback to be called when this event is dispatched.
|
| Event.prototype.addListener = function(cb, filters) {
|
| @@ -450,20 +445,13 @@
|
| ruleFunctionSchemas.getRules.parameters);
|
| }
|
|
|
| - // Special load events: we don't use the DOM unload because that slows
|
| - // down tab shutdown. On the other hand, onUnload might not always fire,
|
| - // since Chrome will terminate renderers on shutdown (SuddenTermination).
|
| - chromeHidden.onUnload = new Event();
|
| -
|
| - chromeHidden.dispatchOnUnload = function() {
|
| - chromeHidden.onUnload.dispatch();
|
| - chromeHidden.wasUnloaded = true;
|
| -
|
| + unloadEvent.addListener(function() {
|
| for (var i = 0; i < allAttachedEvents.length; ++i) {
|
| var event = allAttachedEvents[i];
|
| if (event)
|
| event.detach_();
|
| }
|
| - };
|
| + });
|
|
|
| chrome.Event = Event;
|
| + exports.dispatchEvent = dispatchEvent;
|
|
|