diff --git a/lib/OpenLayers/Events.js b/lib/OpenLayers/Events.js index cab2027e8a..80a95ff7ee 100644 --- a/lib/OpenLayers/Events.js +++ b/lib/OpenLayers/Events.js @@ -406,6 +406,7 @@ OpenLayers.Events = OpenLayers.Class({ initialize: function (object, element, eventTypes, fallThrough) { this.object = object; this.element = element; + this.eventTypes = eventTypes; this.fallThrough = fallThrough; this.listeners = {}; @@ -415,13 +416,11 @@ OpenLayers.Events = OpenLayers.Class({ this.handleBrowserEvent, this ); - this.eventTypes = []; - // if eventTypes is specified, create a listeners list for each // custom application event. - if (eventTypes != null) { - for (var i = 0; i < eventTypes.length; i++) { - this.addEventType(eventTypes[i]); + if (this.eventTypes != null) { + for (var i = 0; i < this.eventTypes.length; i++) { + this.addEventType(this.eventTypes[i]); } } @@ -455,13 +454,10 @@ OpenLayers.Events = OpenLayers.Class({ * * Parameters: * eventName - {String} - * dontAddMe - {Boolean} */ addEventType: function(eventName) { if (!this.listeners[eventName]) { this.listeners[eventName] = []; - - this.eventTypes.push(eventName); } },